虚函数的调用

头文件
class A
{
public:
	virtual void f1();
    void   f2();
};

class B : public  A
{
public:
	virtual void f1();
};

源文件

#include "123.h"
#include <iostream>

void A::f1()
{
	std::cout << "A::f1()\n";
}
void A::f2()
{
	std::cout << "A::f2()\n";
	f1();
}

void B::f1()
{
	std::cout << "B::f1()\n";
}
void main()
{
	A* pA = new B;
	pA->f2();
	delete pA;
	system("pause");
}
输出结果:

A::f2()
B::f1()
请按任意键继续. . .



猜你喜欢

转载自blog.csdn.net/whueratsjtuer/article/details/51685564