21xrx.com
2024-12-22 16:49:08 Sunday
登录
文章检索 我的文章 写文章
C++继承与派生代码实例
2023-07-09 11:31:39 深夜i     --     --
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++的继承与派生是一种强大的工具,可以大幅度减少代码的重复,提高代码的复用性。在实践中,我们应当合理使用继承与派生,避免出现多重继承等问题,以确保代码的简洁和可读性。

  
  

评论区

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