Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Public Member Functions | Protected Attributes
mrpt::copiable_NULL_ptr< T > Struct Template Reference

Detailed Description

template<class T>
struct mrpt::copiable_NULL_ptr< T >

A wrapper class for pointers that, if copied with the "=" operator, should be set to nullptr in the new copy.

See also
safe_ptr, non_copiable_ptr, copiable_NULL_ptr

Definition at line 318 of file safe_pointers.h.

#include <mrpt/core/safe_pointers.h>

Inheritance diagram for mrpt::copiable_NULL_ptr< T >:
Inheritance graph

Public Member Functions

 copiable_NULL_ptr ()
 
 copiable_NULL_ptr (const copiable_NULL_ptr< T > &o)
 
copiable_NULL_ptr< T > & operator= (T *p)
 
virtual ~copiable_NULL_ptr ()
 
T & operator* ()
 
const T & operator* () const
 
T & operator[] (const size_t &i)
 
const T & operator[] (const size_t &i) const
 
bool operator== (const T *o) const
 
bool operator== (const copiable_NULL_ptr_basic< T > &o) const
 
bool operator!= (const T *o) const
 
bool operator!= (const copiable_NULL_ptr_basic< T > &o) const
 
T *& get ()
 
const T *& get () const
 
T *& operator-> ()
 
const T *& operator-> () const
 

Protected Attributes

T * ptr
 

Constructor & Destructor Documentation

◆ copiable_NULL_ptr() [1/2]

template<class T >
mrpt::copiable_NULL_ptr< T >::copiable_NULL_ptr ( )
inline

Definition at line 321 of file safe_pointers.h.

◆ copiable_NULL_ptr() [2/2]

template<class T >
mrpt::copiable_NULL_ptr< T >::copiable_NULL_ptr ( const copiable_NULL_ptr< T > &  o)
inline

Definition at line 322 of file safe_pointers.h.

◆ ~copiable_NULL_ptr()

template<class T >
virtual mrpt::copiable_NULL_ptr< T >::~copiable_NULL_ptr ( )
inlinevirtual

Definition at line 333 of file safe_pointers.h.

Member Function Documentation

◆ get() [1/2]

template<class T >
T*& mrpt::copiable_NULL_ptr_basic< T >::get ( )
inlineinherited

Definition at line 298 of file safe_pointers.h.

References mrpt::copiable_NULL_ptr_basic< T >::ptr.

◆ get() [2/2]

template<class T >
const T*& mrpt::copiable_NULL_ptr_basic< T >::get ( ) const
inlineinherited

Definition at line 299 of file safe_pointers.h.

References mrpt::copiable_NULL_ptr_basic< T >::ptr.

◆ operator!=() [1/2]

template<class T >
bool mrpt::copiable_NULL_ptr_basic< T >::operator!= ( const copiable_NULL_ptr_basic< T > &  o) const
inlineinherited

Definition at line 293 of file safe_pointers.h.

References mrpt::copiable_NULL_ptr_basic< T >::ptr.

◆ operator!=() [2/2]

template<class T >
bool mrpt::copiable_NULL_ptr_basic< T >::operator!= ( const T *  o) const
inlineinherited

Definition at line 292 of file safe_pointers.h.

References mrpt::copiable_NULL_ptr_basic< T >::ptr.

◆ operator*() [1/2]

template<class T >
T& mrpt::copiable_NULL_ptr< T >::operator* ( )
inline

Definition at line 334 of file safe_pointers.h.

References ASSERT_.

◆ operator*() [2/2]

template<class T >
const T& mrpt::copiable_NULL_ptr< T >::operator* ( ) const
inline

Definition at line 339 of file safe_pointers.h.

References ASSERT_.

◆ operator->() [1/2]

template<class T >
T*& mrpt::copiable_NULL_ptr_basic< T >::operator-> ( )
inlineinherited

Definition at line 300 of file safe_pointers.h.

References ASSERT_, and mrpt::copiable_NULL_ptr_basic< T >::ptr.

◆ operator->() [2/2]

template<class T >
const T*& mrpt::copiable_NULL_ptr_basic< T >::operator-> ( ) const
inlineinherited

Definition at line 305 of file safe_pointers.h.

References ASSERT_, and mrpt::copiable_NULL_ptr_basic< T >::ptr.

◆ operator=()

template<class T >
copiable_NULL_ptr<T>& mrpt::copiable_NULL_ptr< T >::operator= ( T *  p)
inline

Definition at line 327 of file safe_pointers.h.

◆ operator==() [1/2]

template<class T >
bool mrpt::copiable_NULL_ptr_basic< T >::operator== ( const copiable_NULL_ptr_basic< T > &  o) const
inlineinherited

Definition at line 287 of file safe_pointers.h.

References mrpt::copiable_NULL_ptr_basic< T >::ptr.

◆ operator==() [2/2]

template<class T >
bool mrpt::copiable_NULL_ptr_basic< T >::operator== ( const T *  o) const
inlineinherited

Definition at line 286 of file safe_pointers.h.

References mrpt::copiable_NULL_ptr_basic< T >::ptr.

◆ operator[]() [1/2]

template<class T >
T& mrpt::copiable_NULL_ptr< T >::operator[] ( const size_t &  i)
inline

Definition at line 345 of file safe_pointers.h.

References ASSERT_.

◆ operator[]() [2/2]

template<class T >
const T& mrpt::copiable_NULL_ptr< T >::operator[] ( const size_t &  i) const
inline

Definition at line 350 of file safe_pointers.h.

References ASSERT_.

Member Data Documentation

◆ ptr

template<class T >
T* mrpt::copiable_NULL_ptr_basic< T >::ptr
protectedinherited



Page generated by Doxygen 1.8.17 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at miƩ 12 jul 2023 10:03:34 CEST