c++11 - Initialize class member variables in C++ 11 -


consider following class definition:

class c { public:     int = 9;     const int j = 2; }; 

without using flag enable c++11 when compiling (using g++, e.g. g++ -o test test.cpp) compiler complains on member variable initializations. however, using -std=c++11 works fine.

why has rule been changed in c++11? considered bad practice initializing member variables in manner?

initializing non-static data members @ point of declaration wasn't "bad practice"; wasn't possible at all prior c++11.

the equivalent c++03 code be:

class c { public:      c() : i(9), j(2)     {     }      int i;     const int j; }; 

and in case: what weird colon-member syntax in constructor?


Comments

Popular posts from this blog

javascript - how to protect a flash video from refresh? -

android - Associate same looper with different threads -

visual studio 2010 - Connect to informix database windows form application -