title: Why does Foo(b) compile successfully in C++?
body: <p>There is a strange behavior when I compile the below code:</p>
  
  <pre><code>class Foo {
  };
  int main() {
      Foo(b);
  }
  </code></pre>
  
  <p>It compiles successfully even without declaration of <code>b</code>.
  Any explanation for this?</p>