This should be trivial but I can\'t seem to find it (unless no such class exists!)
What\'s the STL class (or set of classes) for smart pointers?
UPDATE
If you don't want/can't use Boost and your compiler implements TR1, you can use shared_ptr
(borrowed from Boost):
#include <tr1/memory>
...
std::tr1::shared_ptr<Foo> ptr(new Foo);
Otherwise, no, there are no smart pointers except std::auto_ptr
in vanilla STL.
Time marches on, in C++11:
std::shared_ptr
std::weak_ptr
etc.
For COM objects, use CComPtr<>.
With the exception of the already mentionned TR1 shared_ptr, there is no reference-counted pointer in STL.
I suggest you use boost::shared_ptr (downloading boost will be enough, there is nothing to compile, its implementation is header-only).
You may also want to have a look at smart pointers from Loki libraries (again, header-only implementation).
For an overview of available smart pointers, see there.
There is an alternative implemented for some time in STL PLUS, see at source forge
"STLplus was originally intended as a library to extend the STL by providing missing container data structures such as smart-pointers, matrices, trees and graphs."