Considere el siguiente programa:¿Por qué se llama al constructor una sola vez?
class A
{
public:
A(int i)
{
cout<<"Called"<<endl;
}
};
int main()
{
vector<A> v(5,A(1));
return 0;
}
estoy recibiendo la salida: http://ideone.com/81XO6
Called
Por qué el constructor se llama una sola vez, incluso si estamos construyendo 5 objetos?
¿Cómo se administra internamente el compilador vector
?
Los demás son inicializados por el constructor de copia. – jxh
http://ideone.com/lHX5W –
@Benjamin Lindley: debe escribir eso en una respuesta – nico