网址链接html
http://www.javashuo.com/article/p-uxxsfqxv-eh.html函数
主要内容:htm
1. C语言中,结构体的3中不一样声明和定义方式;blog
2. struct在C和C++中的区别。C++能够在struct中添加函数,相似于class;继承
3. C++中,struct和class的区别。内存
struct的成员默认权限是public,class的成员默认权限是private;get
struct的默认继承方式是public,class的默认继承方式是private;class
4. 结构体的做用——封装;变量
5. 结构体的大小和内存对齐;权限
为了提升存储的速度,VC对结构体内的变量存储的起始地址进行“对齐”操做。
1)默认对齐方式:结构体中每一个成员的起始地址相对于结构体内存起始地址的偏移量必须是当前成员所占用内存大小(字节数量)的倍数。同时,VC为了保证结构体的内存大小是字节边界数(即结构中占用内存最大的成员类型的字节数)的倍数,会在最后一个变量申请内存后,根据须要充填相应的字节数。
2)在VC中提供了#pragmapack(n)来设定变量以n字节对齐方式。