2011年3月31日

关于类得数据成员的大小问题。求解。

摘要: Code: #include<iostream> usingnamespacestd; classA{ public: intb; voidtest() { intj; } private: charc; inta; }; intmain() { cout<<sizeof(A)<<endl; }、为什么是8啊,把char c注释掉结果是4,把int a 注释掉结果是1.但是为什么在一起就是8了。不明白清前辈指教! 阅读全文

posted @ 2011-03-31 22:43 ithzhang 阅读(145) 评论(0) 推荐(0)

一到段错误的代码带来的收获。

摘要: class point{public:static void init(){x = 1;y = 2;}public:static int x,y; };void main(){point::init();}看孙鑫老师的视频中讲到,类中的函数前加了static,说明这个函数属于类,不属于某个实例对象,该静态函数不用实例化就存在代码区了,所以在main中可以不用实例化就可以point::init()这样直接调用。那是不是static int x,y;也是一样,不用实例化就有分配内存了?但是我像上面函数那样做,会报错。error LNK2001: unresolved external symbol 阅读全文

posted @ 2011-03-31 21:13 ithzhang 阅读(117) 评论(0) 推荐(0)

特殊数据类型成员变量的初始化

摘要: 有些成员变量的数据类型比较特别,它们的初始化方式也和普通数据类型的成员变量有所不同。这些特殊的类型的成员变量包括:a. 常量型成员变量,如:const int i;b. 引用型成员变量 如:int &i;c. 静态成员变量 .如:static int i;d. 整型静态常量成员变量 如:static const int i;e. 非整型静态常量成员变量 如:static const double i;对于常量型成员变量和引用型成员变量的初始化,必须通过构造函数初始化列表的方式进行。在构造函数体内给常量型成员变量和引用型成员变量赋值的方式是行不通的。静态成员变量的初始化也颇有点特别。参考 阅读全文

posted @ 2011-03-31 20:53 ithzhang 阅读(151) 评论(0) 推荐(0)

导航