Я поймал эту проблему больше, чем один раз:Обнаружение орфографическими виртуальной функции
class A{
public:
virtual ~A() {}
virtual int longDescriptiveName(){ return 0; }
};
class B: public A{
public:
virtual int longDescriptveName(){ return 1; } // Oops
};
Если функция чисто виртуальная, компилятор ловит ошибку. Но если это не так, это может быть ужасная ошибка для отслеживания. Часть проблемы состоит в том, что имена функций могут быть слишком длинными. Но я все еще удивляюсь, есть ли способ увидеть эти ошибки раньше?
Это полезное расширение! Но я использую gcc. –