refer to section 10.4.6.3 "copying members" of TC++PL 3rd edition
<p>What does this statement mean?</p>

<blockquote>
  <p>A default copy constructor or default copy assignment copies all
  elements of of the class. If this copy cannot be done, it is an error
  to try to copy an object of class.</p>
</blockquote>

<p>For example:</p>

<pre><code>class unique_handle{    
    unique_handle(const unique_handle&amp;);
    unique_handle&amp;operator=(const unique_handle&amp;);  
public ://...
};  

struct Y {
    unique_handle a;
}//require explicit initialization  
Y y1;
Y y2=y1; //error:cannot copy Y::a   
</code></pre>
