c++语言override怎么调用

655Z技术栈 C/C++编程 2025年07月10日 9

在C++语言中,可以使用关键字override来表明一个成员函数是一个覆盖(override)了基类中同名函数的派生类函数。通过使用override关键字,可以提供编译器对函数重写的检查,确保函数的签名与基类中的函数一致。

要调用派生类中覆盖了基类函数的函数,可以使用基类的指针或引用来调用,这样可以实现多态性。以下是一个示例:

#include <iostream> class Base { public: virtual void print() { std::cout << "Base class" << std::endl; } }; class Derived : public Base { public: void print() override { std::cout << "Derived class" << std::endl; } }; int main() { Base* basePtr = new Derived(); basePtr->print(); // 调用Derived类中的print函数 delete basePtr; return 0; }

在上述示例中,Derived类覆盖了Base类中的print函数。在main函数中,基类指针basePtr指向一个派生类的实例。通过基类指针调用print函数时,实际上会调用派生类中的print函数。输出结果为"Derived class"。

需要注意的是,为了实现多态性,基类中的函数必须声明为虚函数(使用virtual关键字)。这样在运行时,可以根据实际对象的类型来调用相应的函数。

提供PHP及ThinkPHP框架的定制开发、代码优化,PHP修改、ThinkPHP修改。

邮箱:yvsm@163.com 微信:yvsm316 QQ:316430983
关闭

用微信“扫一扫”