在找到并替换重构之后,我最终得到了这个gem:
const class A { };
"const class"是什么意思?好像编译好了.
该const
是在例如意义的,你的编译器应该给你一个错误,但如果你用它来宣告闭幕之间的类的变量}
和;
,然后定义这些实例作为const
,例如:
const class A { public: int x, y; } anInstance = {3, 4}; // The above is equivalent to: const A anInstance = {3, 4};
"const class"是什么意思?好像编译好了.
不适合我,它没有.我认为你的编译器只是礼貌而忽略它.
编辑:是的,VC++默默地忽略了const,GCC抱怨道.
如果你有这个:
const class A { } a;
那么它显然意味着'a'是常数.否则,我认为这可能是无效的c ++.
除非您之后声明该类的实例,否则它是没有意义的,例如:
const // It is a const object... class nullptr_t { public: templateoperator T*() const // convertible to any type of null non-member pointer... { return 0; } template operator T C::*() const // or any type of null member pointer... { return 0; } private: void operator&() const; // Can't take address of nullptr } nullptr = {};
nullptr
如果您正在等待C++ 0x,则为临时实现.