Version: 2.9.4
Public Member Functions
wxScopedPtr< T > Class Template Reference

#include </home/zeitlin/src/wx/github/interface/wx/scopedptr.h>


Detailed Description

template<typename T>
class wxScopedPtr< T >

A scoped pointer template class.

It is the template version of the old-style scoped pointer macros.

Notice that objects of this class intentionally cannot be copied.

Library:  wxBase
Category:  Smart Pointers
参照:
wxSharedPtr<T>, wxWeakRef<T>

Public Member Functions

 wxScopedPtr (T *ptr=NULL)
 Constructor takes ownership of the pointer.
 ~wxScopedPtr ()
 Destructor deletes the pointer.
T * get () const
 Returns pointer to object or NULL.
 operator unspecified_bool_type () const
 Conversion to a boolean expression (in a variant which is not convertible to anything but a boolean expression).
T & operator* () const
 Returns a reference to the object.
T * operator-> () const
 Smart pointer member access.
T * release ()
 Releases the current pointer and returns it.
void reset (T *ptr=NULL)
 Reset pointer to the value of ptr.
void swap (wxScopedPtr< T > &ot)
 Swaps pointers.

List of all members.


Constructor & Destructor Documentation

template<typename T >
wxScopedPtr< T >::wxScopedPtr ( T *  ptr = NULL)

Constructor takes ownership of the pointer.

Parameters:
ptrPointer allocated with new or NULL.
template<typename T >
wxScopedPtr< T >::~wxScopedPtr ( )

Destructor deletes the pointer.


Member Function Documentation

template<typename T >
T* wxScopedPtr< T >::get ( ) const

Returns pointer to object or NULL.

template<typename T >
wxScopedPtr< T >::operator unspecified_bool_type ( ) const

Conversion to a boolean expression (in a variant which is not convertible to anything but a boolean expression).

If this class contains a valid pointer it will return true, if it contains a NULL pointer it will return false.

template<typename T >
T& wxScopedPtr< T >::operator* ( ) const

Returns a reference to the object.

If the internal pointer is NULL this method will cause an assert in debug mode.

template<typename T >
T* wxScopedPtr< T >::operator-> ( ) const

Smart pointer member access.

Returns pointer to object.

If the internal pointer is NULL this method will cause an assert in debug mode.

template<typename T >
T* wxScopedPtr< T >::release ( )

Releases the current pointer and returns it.

注意:
Afterwards the caller is responsible for deleting the data contained in the scoped pointer before.
template<typename T >
void wxScopedPtr< T >::reset ( T *  ptr = NULL)

Reset pointer to the value of ptr.

The previous pointer will be deleted.

template<typename T >
void wxScopedPtr< T >::swap ( wxScopedPtr< T > &  ot)

Swaps pointers.

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines