title: Visual C++ 2005 - are local int and double variables initialized to 0 by default or not?
body: <p>My C++ got a bit rusty, so a quick question in Visual C++ 2005 - are local (to function) int and double variables initialized to 0 by default or not?</p>
  
  <p>Is the right that in the following code:</p>
  
  <pre><code>void Foo()
  {
  int a, b, c = 0;
  double d, e, f = 0.0;
  }
  </code></pre>
  
  <p>c and f are initialized to 0 and 0.0 respectively while b, c, d and e are uninitialized and will likely to contain some garbage when compiled in a release mode with all the optimizations are on?</p>