Create a managed pointer owning *ptr with the specified deleter.
Synopsis
Declared in <bslma_managedptr.h>
template<class MANAGED_TYPE>
ManagedPtr(
MANAGED_TYPE* ptr,
void* cookie,
DeleterFunc deleter);
Description
Create a managed pointer having a target object referenced by the specified ptr, owning the managed object *ptr, and having a deleter that will invoke the specified deleter with the address of the currently managed object, and with the specified cookie (that the deleter can use for its own purposes), unless 0 == ptr, in which case create an empty managed pointer. This constructor will not compile unless MANAGED_TYPE * is convertible to TARGET_TYPE *. The deleter will invoke the destructor of MANAGED_TYPE rather than the destructor of TARGET_TYPE. The behavior is undefined if ptr is already managed by another object, or if 0 == deleter && 0 != ptr.
Parameters
Name |
Description |
ptr |
pointer to the object to manage, or null |
cookie |
cookie passed to |
deleter |
function used to destroy the managed object |
Created with MrDocs