C++ Constructor initialization list strangeness

前端 未结 5 1457
离开以前
离开以前 2021-02-20 05:58

I have always been a good boy when writing my classes, prefixing all member variables with m_:

class Test {
    int m_int1;
    int m_int2;
public:
    Test(int          


        
5条回答
  •  逝去的感伤
    2021-02-20 06:31

    What you have done is standard C++. Only member variables or base classes may be initliazed in the initialization list, so the variable outside the paranthesis is unambiguous. Within the parenthesis, the typical scoping rules apply, and the members are overshadowed by the parameter names.

提交回复
热议问题