父类的虚函数 子类我不想重写 代码
时间: 2024-10-12 12:13:03 浏览: 30
c#切换执行程序顺序,有些中级开发小伙伴还是搞不太明白在继承父类以及不同场景实例化的情况下,父类和子类的各种方法的执行顺序到底是
如果你有一个父类定义了一个虚函数,但你在子类中并不想重写这个函数,你可以直接继承该父类而不做任何特别的操作。这样,当你创建子类的对象并通过父类指针调用该函数时,会执行父类中的函数。
例如,在C++中:
```cpp
class Parent {
public:
virtual void myFunction() { // 虚函数
cout << "Parent's function" << endl;
}
};
class Child : public Parent { // 子类继承父类,不重写虚函数
// 注意这里并没有virtual关键字
};
int main() {
Child child; // 创建子类对象
Parent* parentPtr = &child; // 使用父类指针
// 调用父类的虚函数
parentPtr->myFunction(); // 输出: Parent's function
return 0;
}
```
在这个例子中,`Child`类并未覆盖`Parent`类中的`myFunction()`,因此即使我们使用`Parent`类型的指针访问`Child`实例,也会执行`Parent`中的函数。
阅读全文