[讨论] 一道C++的题目,求解

huixianfxt   2015-3-29 15:58 楼主
file:///G:\qq\1017269368\Image\C2C\QZA_1{0JM45AGLXFW7}U%8Q.png#include #include using namespace std; class A1{ public: //int a; static int b; // A1(); // ~A1(); }; int main(){ cout< 本帖最后由 huixianfxt 于 2015-3-29 16:00 编辑
人有的时候真是奇怪,选择了会后悔,放弃了会遗憾,完美只能是一种理想,不是一种存在。

回复评论 (4)

2推荐 247153481 

跟编译器有关,可能是1 2 4个字节,不过一般是1个字节
上述类值包含一个静态成员,可以说是一个空类,因此只有编译器为之分配的一个字节作为占位符。至于静态成员存储在静态变量区,并不占用类的成员空间,也就说所有的对象都共享那一个变量,而不会每个对象分配一个静态成员
另外要运行的话还得加一个#include
以上纯属自己的理解,如果有误,多谢指正
点赞  2015-3-29 18:44
顶帖赚金。。。
[最怕拼了命的珍惜到最后还是什么都留不住。 ]
点赞  2015-3-29 16:32
引用: 247153481 发表于 2015-3-29 18:44
跟编译器有关,可能是1 2 4个字节,不过一般是1个字节
上述类值包含一个静态成员,可以说是一个空类,因此只有编译器为之分配的一个字节作为占位符。至于静态成员存储在静态变量区,并不占用类的成员空间,也就说所有的对象都共享那一个变量,而不会每个对象分配一个静态成员
另外要运行的话还得加一个#include 吧
以上纯属自己的理解,如果有误,多谢指正

#include 这个在上面!截过来的时候可能出现了点错误,没法编辑过来。谢谢你的回复,受教了!
人有的时候真是奇怪,选择了会后悔,放弃了会遗憾,完美只能是一种理想,不是一种存在。
点赞  2015-3-29 19:20
感觉和平台有关系。。
点赞  2015-3-29 19:29
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复