title: Wrapping a std::exception and throwing an ApplicationException
body: <p>I have the following code in a c++/CLI library to catch unmanaged exceptions and rethrow them:</p>
  
  <pre><code>catch(const std::exception &amp;e)
  {
      String ^errorMessage = String::Format(L"Parser threw exception: {0}", gcnew String(e.what()));
      throw gcnew ApplicationException(errorMessage);
  }
  </code></pre>
  
  <p>Is this the best way?  I seem to be losing a lot of information this way. </p>