title: C++ Static Const Member Variable Usage
body: <p>Say that I have a class that requires a few constants to function.  Several member functions require use of these constants.  Use of #define is frowned upon since it can cause collisions.  The constants are hex patterns of 8 or 16 bits and are stored as uint8_t or uint16_t.  These constants also don't change from instance to instance of the class, and therefore memory (albeit very little memory)  can be saved by having only one copy of the constants.</p>
  
  <p>Is there anything improper, or perhaps of better way of accomplishing the above instead of simply doing something like the following:</p>
  
  <pre><code>// mycode.h
  // .......
  class myclass {
  private:
    static const uint16_t kMyClassConstant_ = 0xBEEF;
  // .......
  };
  </code></pre>
  
  <p>Thanks in advance for the help.</p>