Std::vector fait toujours une copie de ce qui est stocké dans le vecteur.
Si vous gardez un vecteur de pointeurs, alors il fera une copie du pointeur, mais pas de l'instance vers laquelle le pointeur pointe. Si vous avez affaire à de gros objets, vous pouvez (et devriez probablement) toujours utiliser un vecteur de pointeurs. Souvent, l'utilisation d'un vecteur de pointeurs intelligents d'un type approprié est une bonne chose pour des raisons de sécurité, car la gestion de la durée de vie des objets et de la mémoire peut être délicate autrement.