21xrx.com
2024-12-27 20:45:43 Friday
登录
文章检索 我的文章 写文章
如何在 C++ 中调用基类函数?
2023-07-13 12:37:41 深夜i     --     --
C++ 基类函数 调用

在 C++ 中,派生类继承了基类的所有成员函数和数据成员。通过继承,派生类可以使用基类中提供的函数来实现其自身的功能。但有时候派生类需要在基类函数的基础上进行修改或者增强功能。此时我们需要在派生类中调用基类函数,可以使用基类名和作用域解析运算符来调用基类函数。

在 C++ 中,基类的成员函数可以通过在派生类中使用基类名和作用域解析运算符来调用。语法如下:


基类名::函数名(参数列表);

例如,假设我们有一个基类`Animal`,拥有一个`run()`方法:


class Animal

{

public:

  void run()

  

    std::cout<<"Animal running"<<std::endl;

  

};

我们再定义一个`Dog`的派生类,其`run()`方法需要在`Animal`基类的`run()`方法基础上增加内容:


class Dog : public Animal

{

public:

  void run()

  {

    Animal::run(); // 调用基类的run()方法

    std::cout<<"Dog running"<<std::endl;

  }

};

在上述代码中,我们在`Dog`类中重写了`run()`方法,并在其中调用基类的`run()`方法。通过`Animal::run()`我们显式地指定调用的是基类的`run()`方法,而不是派生类中重新定义的方法。

需要注意的是,在派生类中调用基类的构造函数时,也可以使用相同的语法:


class Dog : public Animal

{

public:

  Dog() : Animal() // 调用基类的构造函数

  

    std::cout<<"Dog created"<<std::endl;

  

};

在上述代码中,我们在`Dog`类中使用`Animal()`的语法来调用基类的构造函数。

通过上述示例,我们可以了解到在 C++ 中如何调用基类函数。在派生类中使用基类名和作用域解析运算符,可以让我们在派生类的方法中调用基类的方法。这种方式可以让我们在继承关系中更好地利用基类提供的功能来增强和扩展派生类的功能。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复