unique_ptr

unique_ptr<T, Deleter> is a basic owning smart pointer type introduced in C++11.