Supposons que j'écris un C++ système de gestion du personnel avec STLDois-je déclarer mon vecteur <> en tant que vecteur <> *?
J'ai une classe d'entité appelée StaffMember
:
class StaffMember
{
//
}
et un référentiel appelé Staff
:
class Staff
{
private:
std::vector<StaffMember> staffMembers;
}
Comment puis-je savoir si je devrais déclarer staffMembers
comme std::vector<StaffMember>
ou std::vector<StaffMember>*
?
En tant que pointeur, je devrais le supprimer à l'intérieur ~Staff()
, sinon je ne le ferais pas.
Les deux fonctionneront, mais la question est, laquelle est-ce que je choisis et existe-t-il une règle générale que je peux utiliser quand cette question apparaîtra dans le futur?
Vous l'avez dit vous-même. Le pointeur est un travail supplémentaire (même au-delà de ce que vous avez mentionné), et si vous n'avez pas de raison particulière d'en utiliser un, pourquoi feriez-vous ce travail supplémentaire? – chris
vecteur est tout en minuscules, l'édition ... – Jarryd