News SF.net Project Frequently Asked Questions Documentation Downloads Mailing Lists How to Contribute

SourceForge.net Logo

Changing the way games are made and played.

Object Management Trickery

Object Management Trickery


Detailed Description

These functions are to construct and destruct objects in memory without causing a free or malloc call to occur.

This is so that we don't have to worry about allocating, say, space for a hundred NetAddresses with a single malloc call, calling delete on a single NetAdress, and having it try to free memory out from under us.


Functions

template<class T> T * TNL::constructInPlace (T *p)
 Constructs an object that already has memory allocated for it.

template<class T> T * TNL::constructInPlace (T *p, const T *copy)
 Copy constructs an object that already has memory allocated for it.

template<class T> void TNL::destructInPlace (T *p)
 Destructs an object without freeing the memory associated with it.


Function Documentation

template<class T>
T* constructInPlace T *  p  )  [inline]
 

Constructs an object that already has memory allocated for it.

template<class T>
T* constructInPlace T *  p,
const T *  copy
[inline]
 

Copy constructs an object that already has memory allocated for it.

template<class T>
void destructInPlace T *  p  )  [inline]
 

Destructs an object without freeing the memory associated with it.