Polimorfizm na diagramie klas

FU
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 8
0

Powiedzmy, że mam taki kod (C++):

Kopiuj
#include <iostream>
#include <vector>


class IGameObject {
	// ...
};


class CPlayer : public IGameObject {
	// ...
};


class CEnemy : public IGameObject {
	// ...
};


class CGame {
	// ...

private:
	std::vector<IGameObject*> m_gameObjects;
	// ...
};


int main(int argc, char** argv) {
	CGame game;

	// ...

	return 0;
}

Instancja klasy CGame zawiera kontener z obiektami występującymi w grze. Klasa reprezentująca obiekt - IGameObject - posiada co najmniej jedną metodę czysto wirtualną, a więc nie można utworzyć bezpośrednio jej instancji.

Jak powinien wyglądać diagram klas w tym przypadku?

Wersja A:
user image

Wersja B:
user image

Która wersja jest prawidłowa?

somekind
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
2

A

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.