¿Hay alguna diferencia entre boost::shared_ptr
, std::tr1::shared_ptr
y la próxima (en C++0x
) std::shared_ptr
?Diferencias entre los diferentes sabores de shared_ptr
¿Los puertos de uno a otro tienen algún gasto o son básicamente iguales?
¿Hay alguna diferencia entre boost::shared_ptr
, std::tr1::shared_ptr
y la próxima (en C++0x
) std::shared_ptr
?Diferencias entre los diferentes sabores de shared_ptr
¿Los puertos de uno a otro tienen algún gasto o son básicamente iguales?
De acuerdo con el sitio web de Boost, la boost::shared_ptr
...
... cumple con la especificación TR1, con la única excepción de que reside en el espacio de nombres en lugar de
boost
std::tr1
.
Según la Wikipedia C++0x página
La aplicación TR1 carecían de ciertas características de puntero como aliasing y el puntero de la aritmética, pero la versión de C++ 0x añadirá éstos.
Si su código funciona con la versión TR1/Boost, debería funcionar con la versión C++ 0x (pero no necesariamente al revés).
No relacionado directamente con su pregunta, pero unique_ptr de C++ 0x será una mejora en scoped_ptr donde puede hacer cosas como esta: std :: unique_ptr p (new int [10]); –