深度探索C++对象模型学习笔记——Function语意学
2009-10-07 19:20
567 查看
C++支持三种类型的成员函数:静态,非静态、和虚函数
虚函数细节:
每个class有一个virtual table,内含该class之中有作用的virtual function地址,然后每个object有一个vptr,指向virtual table的所在。
对于虚函数ptr->z();的调用,需要知道如下两点:
1.ptr所指对象的真实类型,可使选择正确的z()实体;
2.z()实体位置
多重继承之下,一个derived class内含n-1个额外的virtual tables。
虚函数细节:
每个class有一个virtual table,内含该class之中有作用的virtual function地址,然后每个object有一个vptr,指向virtual table的所在。
对于虚函数ptr->z();的调用,需要知道如下两点:
1.ptr所指对象的真实类型,可使选择正确的z()实体;
2.z()实体位置
多重继承之下,一个derived class内含n-1个额外的virtual tables。
相关文章推荐
- 深度探索C++对象模型 Function语意学笔记
- 深度探索C++对象模型复习和学习 第四章:Function 语意学 (The Semantics of Function)
- 深度探索C++对象模型复习和学习 第六章:执行期语意学
- 深度探索c++对象模型 学习笔记 chapter2-1 default constructor
- 深度探索C++对象模型——Function语意学
- 【C++】深度探索C++对象模型之Function语意学
- 深度探索C++对象模型学习 之 C++构造函数语意学(一)
- 深度探索C++对象模型--Function语意学
- 深度探索c++对象模型学习笔记
- 深度探索C++对象模型复习和学习 第五章:构造、析构、拷贝、语意学
- 深度探索C++对象模型 Data语意学笔记
- 深度探索C++对象模型(六) 执行期语意学
- 深度探索C++对象模型复习和学习 第一章 关于对象 (Object Lessons)
- 【C++】深度探索C++对象模型之虚拟成员函数(virtual member function)
- 【C++】深度探索C++对象模型之构造、析构、拷贝语意学
- 深度探索C++对象模型:5.构造、析构、拷贝语意学
- 深度探索C++对象模型复习和学习 第七章:站在对象模型的尖端
- 读书笔记-深度探索C++对象模型-Chapter4
- 深度探索C++对象模型---data语意学
- 深度探索C++对象之四 --- Function语意学