首页 > 试题广场 >

什么是虚函数?虚函数与函数重载有哪些相同点与不同点?

[问答题]

什么是虚函数?虚函数与函数重载有哪些相同点与不同点?

推荐
虚函数就是在基类中被关键字virtual说明,并在派生类中重新定义的函数。虚函数的作用是允许在派生类中重新定义与基类同名的函数,并且可以通过基类指针或引用来访问基类和派生类中的同名函数。

在一个派生类中重新定义基类的虚函数是函数重载的另一种形式,但它不同于一般的函数重载。当普通的函数重载时,其函数的参数或参数类型必须有所不同,函数的返回类型也可以不同。但是,当重载一个虚函数时,也就是说在派生类中重新定义虚函数时,要求函数名、返回类型、参数个数、参数的类型和顺序与基类中的虚函数原型完全相同。如果仅仅返回类型不同,其余均相同,系统会给出错误信息;若仅仅函数名相同,而参数的个数、类型或顺序不同,系统将它作为普通的函数重载,这时虚函数的特性将丢失。

发表于 2018-05-05 21:26:24 回复(0)