title: CString construction from std::string - copy chars or pointer
body: <p>If I convert a <code>std::string</code> into a <code>CString</code> using something like:</p>
  
  <pre><code>std::string ss("Foo");
  CString cs( ss.c_str() );
  </code></pre>
  
  <p>Does the <code>CString</code> copy the characters from <code>ss</code> or does it simply copy the <code>char*</code> pointer?</p>
  
  <p>My understanding of the <code>c_str()</code> function is that it returns a pointer to a character array owned by the <code>std::string</code>. So having a <code>CString</code> using this internally would seem like a really bad idea as any nonconstant method on either of them would then invalidate the pointer held in the other.</p>