Examples



Examples

Example: Avoid const pass-by-value function parameters in function declarations. The following two declarations are exactly equivalent:

void Fun( int x );

void Fun( const int x );      // redeclares the same function: top-level const is ignored

In the second declaration, the const is redundant. We recommend declaring functions without such top-level consts, so that readers of your header files won't get confused. However, the top-level const does make a difference in a function's definition and can be sensible there to catch unintended changes to the parameter:

void Fun( const int x ) {     // Fun's actual definition
  // …

  ++x;                        // error: cannot modify a const value

  // …
}