【发布时间】:2015-09-11 18:50:27
【问题描述】:
我搜索了一些关于虚函数声明的帖子,相信
=0
在
virtual void test()=0;
是固定的语法所以
virtual void test()=NULL;
virtual void test()=false;
virtual void test()=1-1;
virtual void test()=0.0;
其他声明应该是无效的。
但我找到了
virtual void test()=00;
virtual void test()=000;
virtual void test()=0000;
也可以编译,为什么?
还有,我认为整数+0和-0其实和0一样(我不确定是不是对的),就像00其实是0一样,为什么
virtual void test()=+0;
和
virtual void test()=-0;
无法编译?
【问题讨论】:
-
如果
=00;编译,请向编译器的开发人员提交错误。 -
gcc 4.9.2 在 ';' 之前正确报告“错误:无效的纯说明符(只允许 '= 0')令牌”。