class Club
{
public:
Club();
std::string Name;
int16_t Reputation;
std::vector<std::shared_ptr<Player>> Squad;
// lub
// std::vector<Player*> Squad;
};
class Player
{
public:
Player();
std::string FirstName;
std::string SecondName;
int16_t Value;
std::shared_ptr<Club> Team;
// lub
//Club* Team;
};
class DB
{
public:
DB();
std::vector<std::shared_ptr<Club>> Clubs;
std::vector<std::shared_ptr<Player>> Players;
// lub
//std::vector<Player*> Players;
//std::vector<Club*> Clubs;
// albo
//std::vector<Player> Players;
//std::vector<Club> Clubs;
};
Mam następujące pytanie czy w powyższym przykładzie można w użyć inteligentnych wskaźników w ten sposób?
Czy może lepiej zastosować zwykłe wskaźniki czy inne rozwiązanie (np. referencje) ?