Если ваш класс должен быть абстрактным, вы должны объявить getWidth()
абстрактным.
Вот так virtual int getWidth() = 0;
. Это делает функцию чисто виртуальной, что является обязательным условием для того, чтобы класс был абстрактным.
Тогда нет необходимости создавать файл .cxx, так как нет реализации, которая бы подходила для вашего полностью абстрактного класса.
Только если у вас есть больше методов, из которых не все являются чисто виртуальными, вам потребуется создать файл реализации. Пока класс состоит только из чисто виртуальных функций, вам не нужно создавать реализацию.
Редактировать: Чтобы обеспечить реализацию, создайте новый файл с именем GetL.cxx
#include "GetL.hxx"
int GetL::getWidth() {
// Insert implementation here
}
В зависимости от вашей IDE и настроек проекта вам может понадобиться #include "stdafx.h"
в верхней части этого файла реализации. Обратите внимание, что если вы предоставляете реализацию, ваш класс больше не является абстрактным, и вы не должны использовать = 0
в объявлении вашего метода.