#include <comstl/smartptr/interface_ptr.hpp>
Types | |
typedef interface_ptr< T > | class_type |
The current instantiation of the type. | |
typedef T | value_type |
typedef value_type * | pointer |
typedef value_type const * | const_pointer |
typedef value_type & | reference |
typedef value_type const & | const_reference |
State | |
operator operator_bool_type () const | |
Public Member Functions | |
Construction | |
interface_ptr () | |
interface_ptr (pointer p, bool bAddRef) | |
interface_ptr (reference r, bool bAddRef) | |
interface_ptr (class_type const &rhs) | |
~interface_ptr () throw () | |
class_type & | operator= (class_type const &rhs) |
Operations | |
void | set (pointer p, bool bAddRef) |
void | set (reference r, bool bAddRef) |
void | release () |
void | release (bool bDecRef) |
pointer | detach () |
Detaches the managed instance, and returns it to the caller, which takes responsibility for ensuring that the resource is not leaked. | |
void | swap (class_type &rhs) |
Comparison | |
bool | operator== (class_type const &rhs) const |
bool | operator!= (class_type const &rhs) const |
Accessors | |
pointer | get_interface_ptr () const |
typedef interface_ptr<T> class_type |
pointer detach | ( | ) |
Detaches the managed instance, and returns it to the caller, which takes responsibility for ensuring that the resource is not leaked.
Reimplemented from ref_ptr< T >.