父类虚函数,子类声明为非虚,会有什么特性
class A
{
virtual void Func(int nX);
}
class B : public A
{
void Func(int nX);
}
A* p = new B;
p->Func(5);
我想用A的接口Func,但是可以被子类(C、D...)重载,所以A里Func()声明为虚函数
但是B不会再有子类了,B中重载的Func函数(同名同参数)不声明为虚的,
那p->Func()会调用B的实现吗?
{
virtual void Func(int nX);
}
class B : public A
{
void Func(int nX);
}
A* p = new B;
p->Func(5);
我想用A的接口Func,但是可以被子类(C、D...)重载,所以A里Func()声明为虚函数
但是B不会再有子类了,B中重载的Func函数(同名同参数)不声明为虚的,
那p->Func()会调用B的实现吗?
...全文
相关推荐
xuhanshu.rar_C++虚函数_虚函数
C++虚函数的应用举例,以及一些虚函数的特点分析及注意事项
多态与虚函数详解[可运行源码]
本文详细介绍了C++中的多态概念及其实现方式,重点讲解了虚函数的重写、覆盖与隐藏的区别,以及基类析构函数为何建议设计为虚函数的原因。文章还探讨了虚函数表的存储位置、多态的实现条件(基类指针或引用调用虚函数),并通过代码示例展示了多态的实际应用。此外,文中还涉及了协变、纯虚函数与抽象类、虚函数表指针等高级话题,帮助读者深入理解多态的原理及其在面试中的常见问题。最后,文章总结了多态的优势,如避免内存泄漏,并强调了虚函数在代码设计中的重要性。
虚函数的使用技巧.rar_C++虚函数_虚函数
这个主要讲了在C++中虚函数的使用技巧,众所周知,虚函数的使用是C++中一个难点,希望这个对大家有帮助
设计模式-Java多态
学习
重载重写重定义测试代码
c++重载,重写,重定义测试代码



