C++之虚函数

Posted Engineer-Bruce_Yang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++之虚函数相关的知识,希望对你有一定的参考价值。

<span style="font-size:18px;">#include <iostream>

using namespace std ; 

class   AA 
{
	public:
		int a ;

		//虚函数
		virtual void say_hello(void)
		{
			cout << "this is your parent " << endl ; 
		}

};

class  BB : public  AA
{
	public:
		int b ; 

//如果子类没有实现虚函数,则多态中会调用父类的虚函数
//如果子类有重新实现虚函数,则多态中会调用子类的虚函数 
//__weak   相似

//		void say_hello(void)
//		{
//			cout << "this is your son " << endl ; 
//		}
};

int main(void)
{
	BB bb ; 

	AA * aa = NULL ;

	aa =  (AA *)&bb ; 

	aa->say_hello();
	

	return  0 ; 
}

</span>

运行结果:

技术分享


以上是关于C++之虚函数的主要内容,如果未能解决你的问题,请参考以下文章

C++之虚函数和虚函数表

C++之虚函数和多态

C++面试题之虚函数(表)实现机制

C++之虚函数与虚继承详解

初学C++之虚函数及抽象类

9-3:C++多态之多态的实现原理之虚函数表,虚函数表指针静态绑定和动态绑定