День добрый!
Нужно сделать аналог класса QThread, не использующий Qt. В общем, ничего сложного, но столкнулся с одной маленькой проблемой.
Имеем следующий код (пишу по памяти):
class TThread {
private:
static void *Start(void *Object);
protected:
virtual void Run() = 0;
publlic:
void TThread();
};
Метод Start объявляется в конструкторе как start_routine для создаваемого потока. Вид метода:
void * TThread::Start(void *Object)
{
((TThread *) Object)->Run();
return NULL;
}
Для проверки я сделал класс TMyThread, в котором определил метод Run(). Внимание вопрос: почему при выполнении программы на экран выводиться что-то вроде "Avoid to call pure virtual method" и происходит аварийное завершение работы. В чем я не прав?
Ответ на:
комментарий
от OlegY
Ответ на:
комментарий
от syomin
Ответ на:
комментарий
от ASm
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Проблема с наследованием в C++ (2003)
- Форум извечный Thread ,уже почти получилось... но пока QThread object destroyed (2006)
- Форум [C++] [Жаба] Это магия? (2008)
- Форум libevent и c++ (2011)
- Форум Добавить сахара в Java вдохновляясь Lombok (2016)
- Форум [java][generic]interfaces (2011)
- Форум рефакторинг интерфейса класса на С++ (2014)
- Форум Overloading функции базового класса (2005)
- Форум Доступ к Context в State pattern (2014)
- Форум Почему статической ф-ии разрешено вызывать конструктор? (2020)