title: Signature of C++ copy constructor for struct with an enum
body: <p>Is there a reason why the implicit copy constructor for a struct containing an enum would <em>not</em> use the <code>const</code> version - or why there is no copy-constructor at all? I would expect an implicit copy-constructor being created, i.e.:</p>
  
  <pre><code>X(const X&amp; x)
  </code></pre>
  
  <p>I know there are rules for when this might happen, for instance if a member variable does not have a copy constructor, or a non-const copy constructor. I guess my question is how this relates to enums - and if it is this rule that applies?</p>
  
  <p>Adding my own copy constructor seems to work.</p>
  
  <p>Example - what, if any, copy-constructors are created implicitly:</p>
  
  <pre><code>struct MyStruct {
    int myInt;
    double myDouble; 
    MyEnum myEnum;
  };
  </code></pre>