如何在 C++纯虚类中定义函数

   2024-10-02 5360
核心提示:在 C++ 中,可以在纯虚类中定义函数的实现。纯虚类是包含至少一个纯虚函数的抽象类,而纯虚函数是在基类中声明但没有实现的虚函

在 C++ 中,可以在纯虚类中定义函数的实现。纯虚类是包含至少一个纯虚函数的抽象类,而纯虚函数是在基类中声明但没有实现的虚函数。

以下是在 C++ 中在纯虚类中定义函数的方法:

#include <iostream>class AbstractClass {public:    // 纯虚函数    virtual void pureVirtualFunction() = 0;    // 定义一个普通函数    void normalFunction() {        std::cout << "This is a normal function in the abstract class" << std::endl;    }};// 在纯虚类外部实现纯虚函数void AbstractClass::pureVirtualFunction() {    std::cout << "This is the implementation of the pure virtual function" << std::endl;}int main() {    AbstractClass* obj = nullptr;    // AbstractClass obj; // 错误,抽象类不能被实例化    // 正确,通过继承实现纯虚函数    class ConcreteClass : public AbstractClass {    public:        // 实现纯虚函数        void pureVirtualFunction() override {            std::cout << "This is the implementation of the pure virtual function in the concrete class" << std::endl;        }    };    ConcreteClass concreteObj;    obj = &concreteObj;    // 调用纯虚函数和普通函数    obj->pureVirtualFunction();    obj->normalFunction();    return 0;}

在上面的示例中,我们在抽象类 AbstractClass 中定义了一个普通函数 normalFunction 的实现。然后,在抽象类外部实现了纯虚函数 pureVirtualFunction。最后,在一个具体的类 ConcreteClass 中实现了纯虚函数。通过继承 AbstractClass,我们可以创建一个具体类对象,并调用纯虚函数和普通函数。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号