Здравствуйте, Аноним, Вы писали:
А>Почему не работает этот код???????
маловато информации. например, непонятно, что и как попадает в Base::start
А>void Base::start(void * pObj)
А>{
А> Base * pBase = (Base*)pObj;
pObj->>run(); // Вот на этом падает в run-time с сообщением 'pure virtual function called'
А>}
а может поможет вот это
А>void Base::Start()
А>{
А> unsigned tid;
А> _beginthreadex(
А> NULL, // security attributes
А> 0, // use default stack size
А> start, // thread function
А> (Base*) this, // argument list
А> 0, // start running
А> &tid // out: thread id
А> );
А>}
А>Чего-то я совсем запутался — разве не должна вызваться Derived::run() ?
может и должна. только где она вызывается — не видно