title: Struct default constructor: will it initialize my members with default vaues i.e. 'zeros'
body: <p>I am learning about constructors and I need a clarification. I can build a struct as follows without specifying a constructor:</p>
  
  <pre><code> struct MyStruct {
   int member;
   }
  </code></pre>
  
  <p>When I make an object of this struct the generated default constructor will not initialize <code>member</code> to a default vlaue unless explicitly stated in a user defined constructor, correct? So that this:</p>
  
  <pre><code>MyStruct object;
  cout&lt;&lt;object.member&lt;&lt;endl;
  </code></pre>
  
  <p>will output some random value depending on what is stored in that memory address at runtime, correct? </p>
  
  <p>My final question is, If I do not explicitly declare and define a constructor will the generated constructor initialize <code>member</code> when I create an object of <code>MyStruct</code> or is <code>member</code> left uninitialized? </p>