Я в настоящее время с этим вопросом с наследованием:Как дать заголовочный файл знать о наследовании классов
A.hpp
{
class Example;
}
A.cpp
{
class Example : public Base {
//OVERRIDE FUNCTIONS OF CLASS HERE
}
}
B.hpp
{
class DerivedExample;
}
B.cpp
{
class DerivedExample : public Example {
//How to override the functions of class Base here?
}
}
И у меня есть метод, который получают параметр Base
:
void doSomething(Base* base) = 0;
Дело в том, этот doSomething
метод принимает только Example
, но не принимает DerivedExample
. Что мне нужно сделать, чтобы заголовочный файл A
знал, что класс Example
является производным классом класса Base
без перемещения всех определений методов там? Извините, если это звучит неоднозначно, я довольно новичок в C++. Спасибо.
Ваши объявления класса должны быть в ваших заголовочных файлах. – drescherjm