原帖由 破碎细胞 于 2009-2-22 22:39 发表
这是个小问题,我一直想不明白,各位大虾能否从编译器的角度说一下,为什么不能在class定义中给非static非const数据成员赋初值,
像这样:
class A
{
int a=12;
};
...
原帖由 mik 于 2009-2-22 23:07 发表
这在C版问比较合适吧。不过c版有人在问,不会是你的马甲吧![]()
BTW:
C++要学得好,必须要了解类的内存布局,也就是 object 模型,《inside C++ object model》这本书不错,看了这书你就会了解。 ...
原帖由 Cyberman.Wu 于 2009-2-23 18:56 发表
这个是语法定义问题吧,和编译器没什么关系。如果设计这样写的初始就是创建对象时的初值也未尝不可,就好比在构造函数中赋值一样。不过这样分析显然要复杂一些。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |