zipios::ReferenceCount< Type > Class Template Reference

ReferenceCount is useful to ensure proper handling of the reference count for (objects of) classes handled through a SimpleSmartPointer. More...

`#include <simplesmartptr.h>`

## Public Member Functions

| ReferenceCount ()
| Constructor intializes count to zero.
| ReferenceCount (const ReferenceCount &src)
| Copy-constructor intializes count to zero.
const ReferenceCount & | operator= (const ReferenceCount &src)
| The assignment operator doesn't copy the reference count, it leaves it unchanged.

## Friends

class | SimpleSmartPointer< Type >
| SimpleSmartPointer needs to be a friend to invoke the private ref() and unref() methods.
class | SimpleSmartPointer< const Type >
class | FileEntry
| Type also needs to be a friend to invoke the private ref() and unref() methods, in case Type doesn't want to inherit ReferenceCount and thus needs to invoke ref() and unref() through forwarding member functions.
class | Bogus

## Detailed Description

template<class Type>
class zipios::ReferenceCount< Type >

ReferenceCount is useful to ensure proper handling of the reference count for (objects of) classes handled through a SimpleSmartPointer.

Subclassing ReferenceCount is all a class needs to become ready for being handled by SimpleSmartPointer. Another way is to add a ReferenceCount member variable to a class and write two methods 'void ref() const' and 'unsigned int unref() const' that invoke the same methods in the ReferenceCount variable.

Definition at line 99 of file simplesmartptr.h.

## Constructor & Destructor Documentation

## ReferenceCount() [1/2]

template<class Type>

zipios::ReferenceCount< Type >::ReferenceCount | ( |  | ) |

inline

Constructor intializes count to zero.

Definition at line 122 of file simplesmartptr.h.

## ReferenceCount() [2/2]

template<class Type>

zipios::ReferenceCount< Type >::ReferenceCount | ( | const ReferenceCount< Type > & | src | ) |

inline

Copy-constructor intializes count to zero.

It doesn't copy it from src.

Definition at line 126 of file simplesmartptr.h.

## Member Function Documentation

## operator=()

template<class Type>

const ReferenceCount & zipios::ReferenceCount< Type >::operator= | ( | const ReferenceCount< Type > & | src | ) |

inline

The assignment operator doesn't copy the reference count, it leaves it unchanged.

Definition at line 130 of file simplesmartptr.h.

## Friends And Related Symbol Documentation

## Bogus

template<class Type>

friend class Bogus

friend

Definition at line 118 of file simplesmartptr.h.

## FileEntry

template<class Type>

friend class FileEntry

friend

Type also needs to be a friend to invoke the private ref() and unref() methods, in case Type doesn't want to inherit ReferenceCount and thus needs to invoke ref() and unref() through forwarding member functions.

Definition at line 117 of file simplesmartptr.h.

## SimpleSmartPointer< const Type >

template<class Type>

friend class SimpleSmartPointer< const Type >

friend

Definition at line 86 of file simplesmartptr.h.

## SimpleSmartPointer< Type >

template<class Type>

friend class SimpleSmartPointer< Type >

friend

SimpleSmartPointer needs to be a friend to invoke the private ref() and unref() methods.

Definition at line 86 of file simplesmartptr.h.

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

- simplesmartptr.h