虚函数,虚继承与虚函数表

来源:互联网 发布:淘宝苏哥游戏 编辑:程序博客网 时间:2024/06/06 20:30

c++实现多态机制 :

模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议

1]虚函数==〉带有virtue关键字的函数,并且不带有=0标志的

2]虚继承带有virtual关键字的继承,基类被称为虚基类,会在自己对象的实例中产生虚基类指针


虚函数与菱形继承的问题:

1]

当发生继承时,如果派生类重写了基类的虚函数,那么派生类的对象中会修改基类的虚表,虚表中的函数指针会指向派生类自己重写的函数,如果派生类没有重写基类的虚函数,那么派生类不会改变那个虚函数的指向只是把它继承下来。

2]虚继承解决菱形继承的问题

虚继承会使对象存储一个相对虚基类的相对偏移量,并且把虚基类的实部存储一次,使访问防止二义性

0 0
原创粉丝点击