首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

静态数据成员不是类中各个对象的一部分,所以它可以与类具有相同的类型,为什么这代码会报错?该怎么解决

2012-02-06 
静态数据成员不是类中各个对象的一部分,所以它可以与类具有相同的类型,为什么这代码会报错?#include iost

静态数据成员不是类中各个对象的一部分,所以它可以与类具有相同的类型,为什么这代码会报错?
#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;
}

热点排行