Example 1: Important domain-specific constants at namespace level.
const size_t PAGE_SIZE = 8192, WORDS_PER_PAGE = PAGE_SIZE / sizeof(int), INFO_BITS_PER_PAGE = 32 * CHAR_BIT;
Example 2: Class-specific constants. You can define static integral constants in the class definition; constants of other types need a separate definition or a short function.
// File widget.h class Widget { static const int defaultWidth = 400;
// value provided in declaration static const double defaultPercent;
// value provided in definition static const char* Name() {return "Widget"; } };
// File widget.cpp const double Widget::defaultPercent = 66.67;
// value provided in definition const int Widget::defaultWidth;
// definition required