2013-05-17 1 views
0

Я пытаюсь создать список игр, которые у меня есть. У меня есть класс под названием gameCommonКак получить класс из другого в C++?

class gameCommon 
{ 
public: 
string name; 
int price; 
} 

Это общая информация, что все игры имеют. Теперь следующая часть - создать еще один класс, который будет содержать информацию, основанную на том, какой тип игры это? (CD/DVD, картридж и т.д.)

, если CD/DVD, класс будет что-то вроде этого,

class childClassOf_gameCommon 
{ 
public: 
int NumOfDisks; 
} 

etc. Но дело в том, сам список будет находиться внутри вектора родительский класс. Что-то вроде vector<gameCommon*>. Итак, как я могу получить childClassOf_gameCommon, так что список vector<gameCommon*> будет содержать атрибуты gameCommon и в зависимости от типа, дополнительную информацию, например numOfDisks .. Извините за то, что вы сбиваете с толку.

+10

Вы должны честно начать с хорошей книги на C++. 'class DerivedGame: GameCommon' – Joe

+4

« ребенок »- ужасная метафора для производного класса ... –

+1

I second @Joe с рекомендацией [хорошая книга] (http://stackoverflow.com/questions/388242/the-definitive- с-книга-гид-и-лист). – Angew

ответ

4

Как это:

class Derived : public gameCommon 
{ 
public: 
    int NumOfDisks; 
    // .... 

Указатель типа gameCommon* может законно указывать на Derived.

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