|
BDE 4.39.x Production Release
|
#include <bsls_objectbuffer.h>
An instance of this union is a raw block of memory suitable for storing an object of type TYPE. Specifically, the size and alignment of this union exactly matches that of TYPE. A TYPE object can be constructed into an ObjectBuffer using the placement new operator and can be destroyed by explicitly calling its destructor, ~TYPE(). It is the user's responsibility to perform this construction and destruction; an ObjectBuffer object does not manage the construction or destruction of any other objects.
ObjectBuffer and the user. An ObjectBuffer provides aligned memory and the user handles construction and destruction of the object contained within that memory. Public Member Functions | |
| TYPE * | address () |
| char * | buffer () |
| TYPE & | object () |
| const TYPE * | address () const |
| const char * | buffer () const |
| const TYPE & | object () const |
|
inline |
Return the address of the first byte of this object, cast to a TYPE * pointer.
|
inline |
Return the address of the first byte of this object, cast to a const TYPE * pointer.
|
inline |
Return the address of the first byte of this object, cast to a char * pointer.
|
inline |
Return the address of the first byte of this object, cast to a const char * pointer.
|
inline |
Return a modifiable reference to the TYPE object occupying this buffer. The referenced object has undefined state unless a valid TYPE object has been constructed in this buffer.
|
inline |
Return a const reference to the TYPE object occupying this buffer. The referenced object has undefined state unless a valid TYPE object has been constructed in this buffer.