Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
Gray::cNewPtr2< TYPE > Class Template Reference

#include <cNewPtr.h>

Inheritance diagram for Gray::cNewPtr2< TYPE >:
Gray::cNewPtr< TYPE > Gray::cPtrFacade< TYPE >

Public Member Functions

 cNewPtr2 ()
 
 cNewPtr2 (const THIS_t &rObj)
 
 cNewPtr2 (const SUPER_t &rObj)
 
 cNewPtr2 (TYPE *pObj)
 
THIS_toperator= (TYPE *p2)
 
THIS_toperator= (const THIS_t &ref)
 
- Public Member Functions inherited from Gray::cNewPtr< TYPE >
 cNewPtr () noexcept
 
 cNewPtr (TYPE *pObj) noexcept
 
 ~cNewPtr ()
 
void AllocArray (size_t nSize=1) noexcept
 
void AllocArray (size_t nSize, const TYPE *p) noexcept
 
void ReleasePtr () noexcept
 
THIS_toperator= (TYPE *p2) noexcept
 
THIS_toperator= (THIS_t &ref) noexcept
 
TYPEoperator* () const
 
TYPEoperator-> () const
 
bool operator!= (const TYPE *p2) const noexcept
 
bool operator== (const TYPE *p2) const noexcept
 
- Public Member Functions inherited from Gray::cPtrFacade< TYPE >
 cPtrFacade (TYPE *p=nullptr) noexcept
 
 cPtrFacade (THIS_t &&ref) noexcept
 
bool isValidPtr () const noexcept
 
TYPE ** get_PPtr ()
 
TYPEget_Ptr () const noexcept
 
void put_Ptr (TYPE *p) noexcept
 
void ReleasePtr () noexcept
 
void AttachPtr (TYPE *p) noexcept
 
TYPEDetachPtr () noexcept
 
THIS_toperator= (TYPE *p) noexcept
 
THIS_toperator= (THIS_t &&ref) noexcept
 
 operator TYPE * () const noexcept
 
TYPEget_Ref () const
 
TYPEoperator* () const
 
TYPEoperator-> () const
 
bool operator! () const noexcept
 Comparison ops. More...
 
bool operator!= (TYPE *p2) const noexcept
 
bool operator== (TYPE *p2) const noexcept
 

Static Public Member Functions

static TYPEDupe (const SUPER_t &rObj)
 

Additional Inherited Members

- Protected Member Functions inherited from Gray::cNewPtr< TYPE >
void AsignPtr (TYPE *p2) noexcept
 
void AsignRef (THIS_t &ref) noexcept
 
void FreeLast () noexcept
 
- Protected Attributes inherited from Gray::cPtrFacade< TYPE >
TYPEm_p
 Pointer to some object of TYPE. More...
 

Detailed Description

template<class TYPE>
class Gray::cNewPtr2< TYPE >

cNewPtr Allow a copy constructor that does deep copy.

Constructor & Destructor Documentation

◆ cNewPtr2() [1/4]

template<class TYPE >
Gray::cNewPtr2< TYPE >::cNewPtr2 ( )
inline

◆ cNewPtr2() [2/4]

template<class TYPE >
Gray::cNewPtr2< TYPE >::cNewPtr2 ( const THIS_t rObj)
inline

copy the contents? beware performance problems here. I don't know if its a derived type or array?

◆ cNewPtr2() [3/4]

template<class TYPE >
Gray::cNewPtr2< TYPE >::cNewPtr2 ( const SUPER_t rObj)
inline

copy the contents? beware performance problems here. I don't know if its a derived type or array?

◆ cNewPtr2() [4/4]

template<class TYPE >
Gray::cNewPtr2< TYPE >::cNewPtr2 ( TYPE pObj)
inlineexplicit

Member Function Documentation

◆ Dupe()

template<class TYPE >
static TYPE* Gray::cNewPtr2< TYPE >::Dupe ( const SUPER_t rObj)
inlinestatic

◆ operator=() [1/2]

template<class TYPE >
THIS_t& Gray::cNewPtr2< TYPE >::operator= ( const THIS_t ref)
inline

◆ operator=() [2/2]

template<class TYPE >
THIS_t& Gray::cNewPtr2< TYPE >::operator= ( TYPE p2)
inline

The documentation for this class was generated from the following file: