~unique_ptr() { if (deleter_) { deleter_(px_); } else { boost::checked_delete(px_); } }
~local_ptr() { deleter_(pointee_); }
~unique_ptr() { if (ptr_) deleter_(ptr_); }
/** 新しいリソースを設定する。<br/>古いリソースは自動的に解放される。 */ void reset(pointer ptr = pointer()) { deleter_(ptr_); ptr_ = ptr; }
void Destroy() final { deleter_(this); }