Как извлечь класс из другого в 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,

(Но, как отмечают комментарии, вы должны попытаться выучить немного больше теории. Учиться на собственном опыте - это хорошо, но вам нужно больше знать об основах, иначе вы столкнетесь с трудностями.)

Другие вопросы по тегам