c++ 静态成员函数能调用非静态成员吗

默认分类 未结 1 344
____Kdti°↘
____Kdti°↘ 2023-03-19 09:32
相关标签:
1条回答
  • 2023-03-19 09:50

    静态成员的定义是针对类的一个对象而言的,即该类的每个对象都有一套自己的静态成员变量和函数。如果想要静态成员函数调用非静态成员,那就必须有一个这个类的instance(实例)才行,例如:

    classfoo{public:foo():m_i(0){}staticvoidadd1(foo&instance);//实例传入函数staticvoidadd1();//定义一个自身的静态实例private:staticfoom_instance;intm_i;};voidfoo::add1(foo&instance){instance.m_i=instance.m_i+1;}voidfoo::add1(){m_instance.m_i=m_instance.m_i+1;}

    谢谢,望采纳!

    不能。。。。。。。。。。。。。。。。。

    0 讨论(0)
提交回复