title: Are arithmetic operations on literals in C++ evaluated at compile time?
body: <p>Herein, similar questions were asked for <code>C#</code>: </p>
  
  <p><a href="https://stackoverflow.com/questions/36451656/are-arithmetic-operations-on-literals-in-c-sharp-evaluated-at-compile-time">Are arithmetic operations on literals in C# evaluated at compile time?</a>, </p>
  
  <p>and <code>java</code>: </p>
  
  <p><a href="https://stackoverflow.com/questions/33040680/are-arithmetic-operations-on-literals-calculated-at-compile-time-or-run-time">Are arithmetic operations on literals calculated at compile time or run time?</a>.</p>
  
  <p><strong>Considering C++, will the following calculations be evaluated during run- or compile-time?</strong> The first is to define a built-in type, the second is to be a function argument.</p>
  
  <p>Yet please consider them for all 4 basic arithmetic operations as well as with other built-in types, e.g. an <code>int</code> instead of the <code>double</code> below.</p>
  
  <ul>
  <li><code>double testDouble = 2.0 + 2.0;</code></li>
  <li><code>aUserDefinedType testUserDefinedTypeObject
  (
      aMemberVariable*std::pow(someOtherVariable, 1.0/8.0)
  );
  </code></li>
  </ul>