可以的,不过要间接访问。看下面的例子
#include
using std::cout;
using std::endl;
class A{
int data;
public: A(int i):data(i)
{
cout<<"new"<};
A():data(0)
{
cout<<"new A"<};
A(const A& a){
data=a.data;
cout<<"new A copy"<};
~A()
{
cout<<"delete"<};
static void access(A*a)//静态成员,参数为对象指针
{
a->data++;
cout<data< }
};
int main()
{
A b(2);
b.access(&b);//静态成员函数访问
return 0;
}
静态成员函数访问非静态成员,必须用用对象作为参数
简单来说就是不行。