Bpp/Standard
Memory
C++
 
 
DESCRIPTION
 

This module provides facilities to manage the memory allocation and deallocation.

 
SOURCE FILES
 

This section allows you to access the C++ source files of the module.

 
PARENT MODULE
 

This module is part of Bpp/Standard.

 
INCLUDED FILES
 

The files listed below are included in the interface part of the module. So any module dependent of this module is also dependent of the files listed here.

  • <new>

  • <bpp/standard/class.hpp>

  • <bpp/standard/stream.hpp>

 
NEEDED FILES
 

The files listed below are needed by the implementation part of the module. But a module dependent of this module is not necessary dependent of the files listed here.

  • <bpp/file_name.hpp>

  • <bpp/modules.hpp>

 
INTEGRATED NAMESPACES
 

The namespaces listed below are integrated in this module. That means any element declared in one of those namespaces can now be directly used by or from this module.

  • standardClass

  • standardStream

 
MACROCOMMANDS
 

The macrocommands listed below can be used without specifying the namespace where they have been defined. That means you can not define an element by your own that have the same name.

 
ERRORS
 

Here are listed the errors that are supported or generated by the module. To use one of them, you do not have to specify the namespace of the module.

  • erMemory
    Not enough memory.

  • erPointerAlreadyRegistered
    The pointer is already registered.

  • erPointerNotRegistered
    The pointer is not registered. That means the area you try to deallocate has not been allocated.

  • erWrongDestructionMode
    Wrong way to destroy an array or a single object.

  • erWrongDestructionPool
    Wrong pool used to destroy an object.

 
VARIABLES
 

Here are listed the variables managed by the module. To use one of them, you have to specify the namespace of the module.

  • clPointerRegister pointerRegister()
    List of the pointers to the dynamically allocated objects and arrays of objects.

 
FUNCTIONS
 

Here are listed the functions provided by the module. To use one of them, you have to specify the namespace of the module.

 
CLASSES
 

Here are listed the classes provided by the module. To use one of them, you have to specify the namespace of the module.

 
clAbstractPool
 
 
Declaration

class clAbstractPool : public clBaseObject

 
Description

Represents a pool of objects. Instead of allocating memory for several objects separately, a pool allocates continuous blocks of memory (that can contain several objects) and manages then the assignment of this memory to each object. It is an abstract class.

 
Methods
 
clPool
 
 
Declaration

template <class prType> class clPool : public clAbstractPool

 
Description

Represents a pool of prType objects.

 
Methods
 
 
Copyright (c) 1999-2016 - Bruno Bachelet - bruno@nawouak.net - http://www.nawouak.net
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation. See this license for more details (http://www.gnu.org).