64,637
社区成员
发帖
与我相关
我的任务
分享
http://blog.csdn.net/haiross/article/details/44781767
struct的初始化及其构造函数 http://blog.csdn.net/niuox/article/details/7253374
谈谈我对这两个关键字的感受,仅供参考,原则是“只要喜欢,怎么用都行”: struct叫“结构”,class叫“类”。程序里有些地方用“结构”比用“类”更多合适!比如: 假如,某一天你通过一种有效途径,发现了某种未知文件的数据规律,是按如下方式排列的: 每6个字节为一组,有N组这样的数据;每一组又分为前2个字节加上后4个字节! 0xA1 0xA2 0xB1 0xB2 0xB3 0xB4 0xA1 0xA2 0xB1 0xB2 0xB3 0xB4 0xA1 0xA2 0xB1 0xB2 0xB3 0xB4 ...... 你如何通过程序来解析他们?如何定义数据结构,或者类?如果用class关键字,我想不出用什么名字来作为类名合适,这样的结构把它叫做‘类’感觉总有些别扭,既然叫‘类’,就应该有方法(成员函数)吧,好像也不需要什么方法;而且,会多出很多字符,比如'public',隐藏的构造和析构函数等。 总之,在这种场合,我更愿意使用struct而不是class#pragma pack(1) struct B2 { unsigned short b; //sizeof(b)==2 }; struct B4 { unsigned long b; //sizeof(b)==4 }; struct B6 { //sizeof(B6) == 6 B2 b2; B4 b4; }; B6 b6[N];
#pragma pack(1)
struct B2 {
unsigned short b; //sizeof(b)==2
};
struct B4 {
unsigned long b; //sizeof(b)==4
};
struct B6 { //sizeof(B6) == 6
B2 b2;
B4 b4;
};
B6 b6[N];
如果用class关键字,我想不出用什么名字来作为类名合适,这样的结构把它叫做‘类’感觉总有些别扭,既然叫‘类’,就应该有方法(成员函数)吧,好像也不需要什么方法;而且,会多出很多字符,比如'public',隐藏的构造和析构函数等。
总之,在这种场合,我更愿意使用struct而不是class