Cela semble être une question stupide, mais je veux juste le vérifier. Si je veux obtenir un objet dans un vecteur par valeur, je peux utiliser [], correct ? Si je le veux par référence, je dois utiliser myvector.at(), n'est-ce pas ? Existe-t-il un moyen de renvoyer un objet par valeur ? Par exemple :
std::vector<Foo> foos;
foos.push_back(Foo());
Foo f1 = foos[0]; // by value
Foo f2 = foos.at(0); // by reference