1,虚函数

需要更改的代码如下: 

#include "pch.h"
#include <iostream>
#include "CTeacher.h"
#include "CStudent.h"

int main(int argc ,char* argv[])
{
	CStudent st1("zhangsan);
	CTeacher st2("lisi");

	CPeople* pe[2] = (&st1 , &st2);
	for (int i = 0; i < 2; i++)
	{
		pe[i]->display;
	}

	return 0;
}

同时将people.h里面的void display()修改为virtual void display()

虚函数的作用:

运行输出“A”

输出“B”

当基类指针指向一个子类对象,通过这个指针调用子类和基类同名成员函数的时候,基类声明为虚函数「子类不写也可以」就会调子类的这个函数,不声明就会调用基类的

 

2,友元 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐