|
Loki
0.1.7
|
#include <SmallObj.h>


Additional Inherited Members | |
Public Types inherited from Loki::SmallObjectBase< ThreadingModel, chunkSize, maxSmallObjectSize, objectAlignSize, LifetimePolicy, MutexPolicy > | |
| typedef AllocatorSingleton < ThreadingModel, chunkSize, maxSmallObjectSize, objectAlignSize, LifetimePolicy > | ObjAllocatorSingleton |
Static Public Member Functions inherited from Loki::SmallObjectBase< ThreadingModel, chunkSize, maxSmallObjectSize, objectAlignSize, LifetimePolicy, MutexPolicy > | |
| static void * | operator new (std::size_t size) throw ( std::bad_alloc ) |
| Throwing single-object new throws bad_alloc when allocation fails. | |
| static void * | operator new (std::size_t size, const std::nothrow_t &) throw () |
| Non-throwing single-object new returns NULL if allocation fails. | |
| static void * | operator new (std::size_t size, void *place) |
| Placement single-object new merely calls global placement new. | |
| static void | operator delete (void *p, std::size_t size) throw () |
| Single-object delete. | |
| static void | operator delete (void *p, const std::nothrow_t &) throw () |
| static void | operator delete (void *p, void *place) |
| Placement single-object delete merely calls global placement delete. | |
SmallObject Base class for polymorphic small objects, offers fast allocations & deallocations. Destructor is virtual and public. Default constructor is trivial. Copy-constructor and copy-assignment operator are not implemented since polymorphic classes almost always disable those operations. Class has no data members so compilers can use Empty-Base-Optimization.