#include <iostream.h>
#include <stl.h>
class X
{
public:
X (int i_ = 0) : i (i_) {}
operator int () const { return i; }
private:
int i;
};
int main ()
{
os_heap_allocator<X> a;
// Allocate (but do not construct) storage for 5 elements.
os_heap_allocator<X>::pointer p = a.allocate (5);
raw_storage_iterator<X*, X> r (p);
for (int i = 0; i < 5; i++)
*r++ = X (i);
for (i = 0; i < 5; i++)
cout << *p++ << endl;
return 0;
}