<spanclass="RenoLink"><ahref="exception_constructors.html">exception</a></span>( <spanclass="RenoLink"><ahref="exception.html">exception</a></span> const & x );</span>
</div><p>Class <tt>boost::<spanclass="RenoLink"><ahref="exception.html">exception</a></span></tt> is designed to be used as a universal base for user-defined exception types.</p>
<p>An object of any type deriving from <tt>boost::<spanclass="RenoLink"><ahref="exception.html">exception</a></span></tt> can store data of arbitrary types, using the <tt><spanclass="RenoLink"><ahref="error_info.html">error_info</a></span></tt> wrapper and <tt><spanclass="RenoLink"><ahref="operator_shl_exception.html">operator<<</a></span>()</tt>.</p>
<p>To retrieve data from a <tt>boost::<spanclass="RenoLink"><ahref="exception.html">exception</a></span></tt> object, use the <tt><spanclass="RenoLink"><ahref="get_error_info.html">get_error_info</a></span>()</tt> function template.</p>
<spanclass="RenoLink"><ahref="exception_constructors.html">exception</a></span>( <spanclass="RenoLink"><ahref="exception.html">exception</a></span> const & x );</pre>
</div><h4>Effects:</h4>
<div><ul><li> Default constructor: initializes an empty <tt>boost::<spanclass="RenoLink"><ahref="exception.html">exception</a></span></tt> object.</li>
<li> Copy constructor: initializes a <tt>boost::<spanclass="RenoLink"><ahref="exception.html">exception</a></span></tt> object which shares with <tt>x</tt> all data added through <tt><spanclass="RenoLink"><ahref="operator_shl_exception.html">operator<<</a></span>()</tt>, including data that is added at a future time.</li>
<p>An string representation of all data stored in the <tt>boost::<spanclass="RenoLink"><ahref="exception.html">exception</a></span></tt> object by the <tt><spanclass="RenoLink"><ahref="operator_shl_exception.html">operator<<</a></span>()</tt> function. See "<spanclass="RenoLink"><ahref="logging.html">Tutorial: Logging of boost::exception Objects</a></span>" for details.</p>
<h4>Throws:</h4>
<p>Nothing.</p>
<h4>Note:</h4>
<p>The return value remains valid until the exception object from which it is obtained is destroyed or modified.</p>