21xrx.com
2025-03-30 23:26:31 Sunday
文章检索 我的文章 写文章
C++继承与派生代码实例
2023-07-09 11:31:39 深夜i     13     0
C++ 继承 派生 代码实例 继承关系

C++是一门广泛使用的编程语言,通过继承与派生可以实现代码的复用和扩展。这里我们将以一个简单的代码实例来说明C++继承与派生的使用。

我们定义一个基类Animal,它有两个公共成员函数eat()和sleep()。Animal的定义如下:

class Animal{
public:
  void eat()
    cout<<"I'm eating"<<endl;
  
  void sleep()
    cout<<"I'm sleeping"<<endl;
  
};

现在我们要定义一个派生类Dog,它继承自Animal,并新添加了一个成员函数bark()。Dog的定义如下:

class Dog: public Animal{
public:
  void bark()
    cout<<"Woof! Woof!"<<endl;
  
};

这里我们使用关键字public表示Dog继承自Animal,并且继承的方式为公共继承。这意味着Dog可以访问Animal类中的公共成员函数。

我们现在可以在主函数中创建Dog的对象,并调用其成员函数。代码如下:

int main(){
  Dog dog;
  dog.eat();
  dog.sleep();
  dog.bark();
  return 0;
}

运行上述代码后,我们可以在控制台看到下面的输出结果:

I'm eating
I'm sleeping
Woof! Woof!

这表明我们成功地使用继承与派生的方式扩展了Animal类。我们可以在Dog类中定义更多的成员变量和函数,从而更好地适应我们的需求。

需要注意的是,派生类可以重写基类的成员函数。如果我们在Dog类中重新定义了一个与Animal类中同名的成员函数,那么在调用该函数时,编译器将调用Dog中定义的函数而非Animal中定义的函数。这被称为函数重写(Function Overriding)。

总之,C++的继承与派生是一种强大的工具,可以大幅度减少代码的重复,提高代码的复用性。在实践中,我们应当合理使用继承与派生,避免出现多重继承等问题,以确保代码的简洁和可读性。

  
  

评论区