Как извлечь класс из другого в C++?
Я пытаюсь составить список игр, которые у меня есть. У меня есть класс с именем gameCommon
class gameCommon
{
public:
string name;
int price;
}
Это общая информация, которую имеют все игры. Теперь следующая часть состоит в создании другого класса, который будет хранить информацию, основанную на том, что это за игра? (CD/DVD, картридж и т. Д.)
если CD / DVD, класс будет что-то вроде этого,
class childClassOf_gameCommon
{
public:
int NumOfDisks;
}
и т.д. Но дело в том, что сам список будет внутри вектора родительского класса. Что-то вроде vector<gameCommon*>
, Итак, как я могу получить childClassOf_gameCommon
так что список vector<gameCommon*>
будет держать атрибуты gameCommon
и в зависимости от типа, дополнительная информация, такая как numOfDisks
.. Извините, что запутался.
1 ответ
Как это:
class Derived : public gameCommon
{
public:
int NumOfDisks;
// ....
Указатель типа gameCommon*
может законно указать на Derived
,
(Но, как отмечают комментарии, вы должны попытаться выучить немного больше теории. Учиться на собственном опыте - это хорошо, но вам нужно больше знать об основах, иначе вы столкнетесь с трудностями.)