title: Zero-initializing an array data member in a constructor
body: <p>I've got an array of class objects, and inside the class object I've got another array that I'd need to initialize to all zeros.  The code compiles and runs, but my output is showing C
  rather than 0.</p>
  
  <p>From the header file:</p>
  
  <pre><code>class Cache {
  private:
      int byte[16];
  public:
      Cache();
      int getBytes(int);
      ~Cache();
  };
  </code></pre>
  
  <p>From the cpp file</p>
  
  <pre><code>Cache::Cache()  
  {
      byte[16]={0};
  }
  
  int Cache::getBytes(int j){
      return byte[j];
  }
  </code></pre>
  
  <p>from the other cpp file</p>
  
  <pre><code>for (int i = 0; i &lt; 16; i++) 
  {
      for (int j = 0; j &lt; 16; j++)  //visual check of initializes main memory
      {
          cout &lt;&lt; cache[i].getBytes(j) &lt;&lt; " ";
  }
  }
  </code></pre>
  
  <p>Is this being set up correctly?  As I mentioned, getBytes is returning 'C's rather than '0's as expected.</p>