<codeclass="computeroutput"><spanclass="identifier">optional</span><spanclass="special"><</span><spanclass="identifier">T</span><spanclass="special">></span></code> is
currently implemented using a custom aligned storage facility built from <codeclass="computeroutput"><spanclass="identifier">alignment_of</span></code> and <codeclass="computeroutput"><spanclass="identifier">type_with_alignment</span></code>
(both from Type Traits). It uses a separate boolean flag to indicate the initialization
state. Placement new with <codeclass="computeroutput"><spanclass="identifier">T</span></code>'s
copy constructor and <codeclass="computeroutput"><spanclass="identifier">T</span></code>'s destructor
are explicitly used to initialize,copy and destroy optional values. As a result,
<codeclass="computeroutput"><spanclass="identifier">T</span></code>'s default constructor is
effectively by-passed, but the exception guarantees are basic. It is planned
to replace the current implementation with another with stronger exception
safety, such as a future <codeclass="computeroutput"><spanclass="identifier">boost</span><spanclass="special">::</span><spanclass="identifier">variant</span></code>.