This is a C++ Smart Pointer type that provides the caller ownership of the object it points to. Unique pointers are deleted if the pointer goes out of scope.