title: Constructor Overloading in C++
body: <p>My C++ overloading does not act as I assume it should:</p>
  
  <pre><code>#include "Node.h"
  #include &lt;iostream&gt;
  
  Node::Node()
  {
      cout &lt;&lt; "1" &lt;&lt; endl;
      Node(Game(), 0.0);
  }
  
  Node::Node(double v)
  {
      cout &lt;&lt; "2" &lt;&lt; endl;
      Node(Game(),v);
  }
  
  Node::Node(Game g, double v)
  {
      cout &lt;&lt; "3" &lt;&lt; endl;
      numVisits = 0;
      value = v;
      game = g;
  }
  </code></pre>
  
  <p>And the output from:</p>
  
  <pre><code>Node n(16);
  cout &lt;&lt; n.value &lt;&lt; endl;
  </code></pre>
  
  <p>is 0, when it should be 16.</p>
  
  <p>What am I doing incorrectly?</p>