C++ part6.5
2024-09-06 09:54:27
1.虚函数表建立和虚函数表指针初始化
虚拟函数表是在编译期就建立了,各个虚拟函数这时被组织成了一个虚拟函数的入口地址的数组。而虚函数表指针是在运行期,也就是构造函数被调用时进行初始化的,这是实现多态的关键。
2.纯虚函数
纯虚函数是在基类中声明的虚函数,含有纯虚函数的类为抽象类,他不能生成对象。任何派生类都要实现基类的纯虚函数,否则派生类还是一个抽象类。
定义纯虚函数是为了实现一个接口,规范派生类的行为。
3.结构体对齐规则
原因:
1.平台移植原因,不是所有硬件平台都能访问任意地址,会抛出异常。
2.CPU效率高,CPU是一块地址一块地址读取的,未对其会增加额外的操作。
规则:
1.第一个变量在结构体偏移量0的地址处。
2.其他成员变量要对齐到类型大小和对齐参数的较小值的整数倍处。
3.结构体整体大小为最大对齐数的整数倍。
4.内涵结构体变量的,先把他求出来,再把结构体的整体大小作为变量大小计算。
最新文章
- css负边距之详解
- Python绘制PDF文件~超简单的小程序
- CryptoJS_Base64
- web.xml配置error-page
- CSU 1325 莫比乌斯反演
- C语言实现冒泡排序法和选择排序法代码参考
- poj3249
- 【HDOJ】1171 Big Event in HDU
- javascript实现silverlight pivotViewer控件
- java中拼接两个数组
- 多选出差同事id,拼接,去掉最后逗号
- AtCoder Beginner Contest 069【A,水,B,水,C,数学,D,暴力】
- Java Web之EL
- C++自动类型转化--特殊构造函数方法和重载的运算符方法
- Kettle性能调优汇总
- 基于神念TGAM的脑波小车(1)
- 在Ubuntu中增加root用户登录
- windows的磁盘操作之九——区分本地磁盘与移动硬盘
- 认识Mac中的那些符号
- 修改mysql root账户登录密码