Smart pointer
tipo di dato astratto
Gli smart pointers (letteralmente "puntatori intelligenti") sono oggetti del C++ che facilitano la vita a chi deve usare i puntatori. Lo scopo principale di uno smart pointer è quello di provvedere una cancellazione automatica della memoria.
Nella libreria standard del C++03 si trova soltanto:
- std::auto_ptr (deprecato nel nuovo standard C++11)
Esempi di smart pointers più efficaci dell'obsoleto "auto_ptr" si trovano nella libreria BOOST:
- boost::shared_ptr
- boost::scoped_ptr
- boost::intrusive_ptr
- boost::weak_ptr
Nella libreria standard del C++11 troviamo questi puntatori:
- std::shared_ptr
- std::weak_ptr
- std::unique_ptr