在C++中,要实现动态绑定,必须使用基类指针调用虚函数。
基类指针和派生类指针的使用总结
基类指针指向基类对象(正常使用);
派生类指针指向派生类对象(正常使用,不管是不是虚函数,调用的都是派生类的函数);
基类指针指向派生类对象(多态的体现,虚函数的话调用的是派生类的,非虚函数的话调用的是基类的);
派生类指针指向基类对象(一般不要这么用)。
动态绑定的简介
动态绑定即动态联编,它是指一个计算机程序自身彼此关联的过程。按照联编所进行的阶段不同,可分为两种不同的联编方法:
静态联编;
动态联编。
编译程序在编译阶段并不能确切知道将要调用的函数,只有在程序执行时才能确定将要调用的函数,为此要确切知道该调用的函数,要求联编工作要在程序运行时进行,这种在程序运行时进行联编工作被称为动态联编,或称动态束定,又叫晚期联编。C++规定动态联编是在虚函数的支持下实现的。
D