J'ai un vecteur, rempli d'objets :
std::vector vec;
vec.push_back(MyClass("Salut", 10)); //exemple, pourrait être n'importe quelle classe
Plus tard, lorsqu'il est rempli, je veux y accéder :
for(unsigned int i = 0; i < vec.size(); i++)
{
MyClass *c = & vec.at(i); // <--- ICI
if(c) // <--- ET ICI
{
c->membreDeMaClasse = x;
}
}
Est-ce plus dangereux d'utiliser c que d'utiliser vec.at(i) directement ? Ai-je besoin de la protection avec if(c) ? c peut-il être nullptr ? Je suppose que non, car le vecteur prend des objets, pas des pointeurs vers des objets.