||Component type: function
template <class T1, class T2> void construct(T1* p, const T2& value);
In C++, the operator new allocates memory for an object and then
creates an object at that location by calling a constructor. Occasionally,
however, it is useful to separate those two operations.  If p is
a pointer to memory that has been allocated but not initialized,
then construct(p, value) creates an object of type T1 at the location
pointed to by p. The argument value is passed as an argument to
Declared in algo.h. The implementation is in algobase.h.
Requirements on types
T1 must have a constructor that takes a single argument of
p is a valid pointer that points to a region of memory whose
size is at least sizeof(T1).
The memory pointed to by p is uninitialized. That is, no
object has been constructed at the location p.
double* dp = (double*) malloc(sizeof(double));
assert(*dp == 3);
In particular, construct, along with other low-level memory
allocation primitives, is used to implement container classes.
Allocators, destroy, uninitialized_copy,
1996 Silicon Graphics, Inc. All Rights Reserved.