title: Why shouldn't the inherited constructor inherit the default arguments?
body: <p><strong>C++ Primer</strong> (5th edition) on page 629 states:</p>
  
  <blockquote>
    <ul>
    <li>If a base class constructor has default arguments, those arguments are not inherited. Instead, the derived class gets multiple inherited constructors in which each parameter with a default argument is successively omitted.</li>
    </ul>
  </blockquote>
  
  <p>What is the reasoning behind this rule?</p>