When initializing parameters in a constructor, the order of initialization will not be the same as the order in which you typed them. The order of initializing parameters is ‘as declared’ in a class:
class CMyClass{public: CMyClass();private: int m_nParam1; int m_nParam2; int m_nParam3;};CMyClass::CMyClass(): m_nParam3(0), m_nParam2(0), m_nParam1(0){}The order of initializing will be :m_nParam1(0), m_nParam2(0), m_nParam3(0)