#include <ivfmath/IvfMathPointer.h>
Public Member Functions | |
CIvfPointer (T *object=0) | |
CIvfPointer (const CIvfPointer &ivfObject) | |
virtual | ~CIvfPointer () |
operator T * () const | |
T & | operator * () const |
T * | operator-> () const |
CIvfPointer & | operator= (const CIvfPointer &ivfPointer) |
CIvfPointer & | operator= (T *ivfObject) |
bool | operator== (T *ivfObject) const |
bool | operator!= (T *ivfObject) const |
bool | operator== (const CIvfPointer &ivfPointer) const |
bool | operator!= (const CIvfPointer &ivfPointer) const |
CIvfPointer (T *object=0) | |
CIvfPointer (const CIvfPointer &ivfObject) | |
virtual | ~CIvfPointer () |
operator T * () const | |
T & | operator * () const |
T * | operator-> () const |
CIvfPointer & | operator= (const CIvfPointer &ivfPointer) |
CIvfPointer & | operator= (T *ivfObject) |
bool | operator== (T *ivfObject) const |
bool | operator!= (T *ivfObject) const |
bool | operator== (const CIvfPointer &ivfPointer) const |
bool | operator!= (const CIvfPointer &ivfPointer) const |
CIvfPointer handles the Ivf++ reference counting scheme of the CIvfBase class. To declare a Ivf++ smart pointer use the IvfSmartPointer() macro. See the following example:
int main() { CIvfPointer<CIvfMaterial> material = new CIvfMaterial(); // addReference() called. CIvfPointer<CIvfMaterial> material2; material2 = material; // addReference() called . . return 0; } // material calls deleteReference() // material2 calls deleteRefernce() and deletes CIvfMaterial object
Definition at line 176 of file IvfPointer.h.