问题引入:
比如:如果我们想在父类的构造函数中调用虚函数,当定义子类对象的时候,父类的构造函数中的虚函数执行的是子类中的函数。
在下面的例子中,定义子类对象的时候,在父类构造函数中的print虚函数执行的不是子类中的print函数,而是父类中的print函数。
#include <iostream>
using namespace std;
class Parent
{
public:
//在父类的构造函数里面,调用虚函数,不会产生多态。。
//言外之意:不会调用子类的虚函数。。。。
Parent(int a = 0)
{
print(); //定义子类对象的时候,想该print函数调用的是子类的print函数。。结果表明调用的是父类的print函数
this->a = a;
}