Hey guys, here is what I read in CProgramming.com:

You cannot initialize the static class member inside of the class. In fact, if you decide to put your code in a header file, you cannot even initialize the static variable inside of the header file; do it in a .cpp file instead.
Have two questions regarding to this:
1. Kind of curious why it cannot be in header file. As long as the initialization does not happen inside the class should be fine right?
2. Also, can initialization happen in a static member function of the class? If not why?

Thank you so much!