为何不能使用?有人说是因为,静态里没有this参数。但是,成员函数里没有成员变量的参数,却能直接使用成员变量,这是为何?比如 cl ass a{public:int a;f(){a = 1 ; // 成员函数里没有a对应的参数,却能直接使用a}}成员函数里没有a对应的参数,却能直接使用a那为何静态成员函数里,不能直接使用成员变量this ?
3 回答
慕无忌1623718
TA贡献1744条经验 获得超4个赞
使用静态成员函数的目的就是使这个函数成为“类”级别的,而不是“对象级别”的,实际上相当于必须通过这个类使用的全局函数,是不属于任何对象的,如果你感觉一个静态成员函数需要处理对象,那么很可能是应该把它定义为成员函数。静态成员函数不能调用普通成员函数和使用普通成员变量。
添加回答
举报
0/150
提交
取消