|
BDE 4.14.0 Production release
|
#include <bsls_objectbuffer.h>
Public Member Functions | |
| TYPE * | address () |
| char * | buffer () |
| TYPE & | object () |
| const TYPE * | address () const |
| const char * | buffer () const |
| const TYPE & | object () const |
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.
Note that a collaboration is implied between ObjectBuffer and the user. An ObjectBuffer provides aligned memory and the user handles construction and destruction of the object contained within that memory.
|
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.