¿Es posible declarar una variable en C++ sin instanciarla? Quiero hacer algo como esto:Declarar un objeto antes de inicializarlo en C++
Animal a;
if(happyDay())
a("puppies"); //constructor call
else
a("toads");
Basially, sólo quiero a declarar el exterior de la condicional por lo que recibe el alcance adecuado.
¿Hay alguna manera de hacer esto sin utilizar punteros y asignar a
en el montón? Tal vez algo inteligente con referencias?
ver RAII (Raii) – newacct
si es un/espacio de nombres de alcance global no estático, entonces vale la pena señalar que en realidad se puede declarar sin inicializarla: Animal extern a; ... Animal a (cosas); –
@newacct: Un enlace ayudaría a https://stackoverflow.com/questions/2321511/what-is-meant-by-resource-acquisition-is-initialization-raii – spinkus