¿Cómo manejan los punteros inteligentes las matrices? Por ejemplo,punteros y matrices inteligentes
void function(void)
{
std::unique_ptr<int> my_array(new int[5]);
}
Cuando my_array
sale del ámbito y obtiene destructed, se vuelve a re-afirmó toda la matriz entera? ¿Solo se reclama el primer elemento de la matriz? ¿O hay algo más en juego (como un comportamiento indefinido)?
Trivia: Aquí es donde se inventó esta sintaxis: http://groups.google.com/group/comp.lang.c++/browse_thread/thread/469fcc136b8f2d42/59c0491245293db7?q=%3Cchar%5B%5D%3E+ grupo: comp.lang.c% 2B% 2B + autor: hinnant –
@Howard Hinnant: Gracias por la trivia, no lo sabía. ¡Tú eres el que lo inventó, en el año 2001! Eso es genial tenerlo aquí :) –
Ese es también el único método que tiene algún sentido, considere 'typedef int (three_ints) [3]; plantilla función de vacío (vacío) {unique_ptr p (nuevo T); } función (); ' –