Mon code ressemble à quelque chose dans ce sens.Un constructeur std :: vector appelle-t-il des constructeurs d'objets pour chaque élément?
class A
{
public:
A(int i) { printf("hello %d\n", i); }
~A() { printf("Goodbye\n"); }
}
std::vector(10, A(10));
Je remarque que bonjour imprime une fois. Il semble impliquer que le vecteur n'alloue de l'espace que pour l'élément mais ne le construit pas. Comment puis-je le faire construire 10 objets A?
très peu de gens désapprouvent en utilisant le style C IO en code C++ (http://www.parashift.com/c++-faq-lite/input-output.html#faq-15.1) – Flexo
c'est seulement un ex amplement OK? – Matt