У меня есть базовый классПереопределение ключевого слова бросали ошибку при компиляции
template<typename T>
Class Base {
Base();
public:
virtual void myfunc()=0;
}
Я производный класс
template<typename T>
Class Derived: public Base<T> {
Derived():Base() {
}
public:
void myfunc() override;
}
Когда я компилирую g++ -std=c++0x
, я получаю ошибку с переопределенной функции выделены, error: expected ‘;’ at end of member declaration
error: ‘override’ does not name a type
g ++ версия 4.6.
Я думаю, вам нужно указать 'myfunc' как' MyFunc() 'в базовом классе, в противном случае коррекция жестокого формируется. – maditya
извините, опечатка во время ввода вопроса – user592748