读书人

静态数据成员不是类中各个对象的一部分

发布时间: 2012-02-06 15:52:45 作者: rapoo

静态数据成员不是类中各个对象的一部分,所以它可以与类具有相同的类型,为什么这代码会报错?
#include <iostream>
using namespace std;
class AA
{
public:
AA(int a=9):num(a){};
void show()
{
cout < <num < <endl;
}
private:
static AA refAA();
int num;

};

AA::AA refAA(2);   //静态成员初始化

int main()
{
AA::refAA.show();
}



[解决办法]
static AA refAA(); 不要加括号 static AA refAA;
[解决办法]
还有
AA AA::refAA(2);
[解决办法]
class A
{
public:
A(){}
static A sa;
int a;
};

A A::sa;

int main()
{
A aObj;
aObj.sa = aObj;
cout < < sizeof(A) < < endl;
return 0;
}

读书人网 >C++

热点推荐