Использование наследованного класса

Есть заголовочный файл test.h в котором хранится абстрактный класс TestABC, а также test.cpp в котором хранится класс Test, наследованный от абстрактного. Как в main.cpp достать класс Test? Я сделал #include "test.h" но не могу использовать класс Test.


Ответы (1 шт):

Автор решения: Zugr

Сделать функцию/фабрику её объявить в test.h, а реализовать в test.cpp. Тогда её можно вызывать будет в main.cpp. Реализация примерно такая: где-то файл test.h

TestABC* makeTest(<тут параметры могут быть нужные>);

где-то файл test.cpp

TestABC* makeTest(<тут параметры могут быть нужные>) {
   return new Test(<тут параметры используются>)
}

где-то файл main.cpp

TestABC* pTest = makeTest(<параметры для Test>);
p->methodTestABC();
...
delete p;
→ Ссылка