title: Why variables are initialized with max value instead of zero
body: <p>I did not work with C++ for many years, and now i wrote c++ project with test.</p>
  
  <p>When i started to debug i find strange thing that variables are not initializing with zero by default. 
  For example when  i watch to the my class uninitialized variable (unsigned int), i see its value 3452816845 insted of expected zeo... 
  Thats cause errors in unit-tests.
  I use such initializattyion:</p>
  
  <pre><code>TEST_METHOD(TestPlus)
          {
              Entity* entity = new Entity();
              entity-&gt;mCreateOperator(entity-&gt;Plus);
              entity-&gt;SetContactValue(1);
              entity-&gt;SetContactValue(2);
              entity-&gt;mProcessLast();
              Assert::IsTrue(entity-&gt;GetContactValue((1+2));
          }
  </code></pre>
  
  <hr>
  
  <p>I have default constructor for Entity class :</p>
  
  <pre><code>Entity::Entity(void)    {/*some internal array initialization*/}
  </code></pre>
  
  <p>I considered that when i using new keyword all class variables will be initialized with 0 by C++ runtime..</p>
  
  <p>Did i miss somethisg?</p>