const static 的问题

来源:互联网 发布:网络兼职信息网 编辑:程序博客网 时间:2024/05/22 03:34

C++ PRIMER 12.6.2.1 中说:“const static 数据成员在类的定义体中初始化时,该数据成员仍必须在类的定义体之外进行定义。在类内部提供初始化式时,成员的定义不比再指定初始值"

在VS2005 中测试了一下:

class KAutoNode{      const static int CardOut ;}const  int KAutoNode::CardOut = 1000;


这是可以的。符合一般情况的static 形式变量声明、定义。

 

当然

class KAutoNode

const static int CardOut = 10000 ;

这样也可以。

 

但是

class KAutoNode

const static int CardOut = 10000 ;

const  int KAutoNode::CardOut ;

就重定义了。

 

 

这是为什么呢??

原创粉丝点击