Skip to content

Latest commit

 

History

History
5 lines (3 loc) · 907 Bytes

虚函数是针对类还是针对对象的?.md

File metadata and controls

5 lines (3 loc) · 907 Bytes

虚函数是针对类的一个概念,而不是针对单个对象。当在C++中定义一个类时,可以将类的成员函数声明为虚函数。这意味着当通过基类指针或引用调用该函数时,将会根据对象的实际类型来决定调用哪个版本的函数,这一过程称为动态绑定或多态。

当派生类继承了包含虚函数的基类时,它可以重写这些虚函数,提供自己特定的实现。如果对象是派生类的实例,即使使用基类类型的指针或引用去调用虚函数,程序也会调用派生类中重写的版本。

这是多态性的核心:同样的函数调用,依据对象的实际类型,可以有不同的行为。因此,虚函数机制是设计在类层面上的,但它影响的是通过那些类创建的对象的行为。每个对象不需要单独定义虚函数,它们都是从其类定义中继承而来的。