C++:子类vprt指针初始化问题

  首先,欢迎并感谢博友进行知识补充与修正。

1、理解图(截自传智扫地僧课堂笔记,如有侵权,请联系删除)

 

2、代码实践

#include <iostream>
using namespace std;

//vptr指针的分步初始化
class Parent
{
public:
	Parent(int a=0)
	{
		this->a = a;
		fun();
	}

	virtual void fun()
	{
		cout << "我是父亲" << endl;
	}
private:
	int a;
};

class Child : public Parent
{
public:
	Child(int a = 0, int b=0):Parent(a)
	{
		this->b = b;
		fun();
	}

	virtual void fun()
	{
		cout << "我是儿子" << endl;
	}
private:
	int b;
};

int main()
{
	Child c1;	//运行结果:我是父亲 /n 我是儿子
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/feissss/article/details/88124410