. 

<code style="white-space: normal"><pre>
void main(){ 
    ... 
    Y y; 
    construct_from x(y); 
    ar &lt;&lt; x; 
    ... 
    x.f(); // change x in some way 
   ... 
    ar &lt;&lt; x 
} 
</pre></code>
  <p>
  Again no problem. He gets two different of copies in the archive, each one is different. 
  That is he gets exactly what he expects and is naturally delighted. 
  <p>
  <li>Now sometime later, a third programmer(3) sees construct_from and says - 
  oh cool, just what I need. He writes a func