c++多态性小例子
多态性:在基类的一个函数前加一个virtual可以实现c++的多态性,意思是子类有的,调用子类的,子类没有的调用基类的.
class Animal()
{
virtual void breath() //加上virtual表示的是虚函数 ,意思是子类有的,调用子类的,子类没有的调用基类的.
{
cout<<"animal"<<endl;
}
void sleep()
{
cout<<"sleep"<<endl;
}
virtual void eat() = 0; //这样定义表示的是纯虚函数 ;既没有实现函数体.含有纯虚函数的类是抽象类.如果子类不实际eat()方法,也变得抽象类.
//{
// cout<<"animaleat"<<endl;
//}
}
class fish():public Animal()
{
void breath()
{
cout<<"fish"<<endl;
}
void fn(Animal *pAn)
{
pAn->breate();
}
virtual void eat(); //这里实际了基类的纯虚函数
{
cout<<"fish eat"<<endl;
}
}
void main()
{
fish fh;
Animal *pAn;
pAn = &fh;
fh(pAn);
}
|
分享到:
相关推荐
本教程将深入探讨C++中的多态性,特别是通过虚函数实现的动态多态性。 首先,我们需要理解什么是虚函数(Virtual Function)。虚函数是基类声明的一种特殊成员函数,它的目的是为了在派生类中能够被重写,以提供...
- 通过虚函数实现:虽然实验中没有明确列出,但多态性的关键在于基类中声明虚函数,然后在派生类中重写这些虚函数。 - 使用抽象类:含有纯虚函数的类是抽象类,不能实例化,但可以作为基类,强制派生类必须重写...
在C++中,多态性主要通过虚函数来实现,从而允许在运行时根据对象的实际类型来调用相应的函数版本。下面将详细介绍多态性的概念、虚函数以及纯虚函数与抽象类的概念和用法。 首先,多态性指的是相同的操作符或函数...
C++中多态性的实现主要依赖于虚函数机制。 #### 二、虚函数与多态性 在C++中,通过定义虚函数来实现多态性。虚函数允许在基类中声明,并在派生类中重新定义,这样就可以根据实际的对象类型调用不同的实现。 #####...
### C++程序设计讲义:多态性与虚函数 #### 12.1 多态性的概念 多态性是面向对象编程的核心特性之一,它允许程序员使用一个通用的接口来表示不同的类实例,从而使得代码更加灵活、可扩展且易于维护。在C++中,多态...
在C++编程语言中,多态性和虚函数是面向对象编程的重要特性,它们极大地增强了代码的灵活性和可扩展性。本文将深入探讨这两个概念,并基于标题和描述中的提示,解析相关代码实例。 首先,让我们理解多态性。多态性...
本实验报告主要聚焦于“多态性”和“虚函数”,这两个特性是C++面向对象特性中的关键部分。 首先,让我们理解什么是多态性。多态性(Polymorphism)是指同一种行为可以有不同的表现形式,或者不同的对象可以对同一...
在C++编程中,多态性和虚函数是面向对象编程的重要特性,它们为代码提供了更大的灵活性和可扩展性。多态性(Polymorphism)主要指的是一个接口可以有多种不同的表现形式或行为,使得相同的代码可以处理不同类型的...
在C++编程语言中,虚函数(Virtual Functions)和多态(Polymorphism)是面向对象编程的重要特性,它们使得程序具有高度的灵活性和可扩展性。本文将深入探讨这两个概念,结合示例代码进行详细解释。 首先,我们来...
《多态性与虚函数》 多态性(Polymorphism)是面向对象编程的核心特性之一,它允许我们使用同一接口来调用不同对象的方法,从而实现代码的灵活性和可...理解并熟练运用多态性和虚函数,是提升C++编程能力的重要一步。
总结来说,C++中的`指针`和`引用`提供了灵活的数据操作方式,而`虚函数`则是实现多态性的重要工具。理解子类对象不能直接调用父类虚函数这一概念,有助于避免编程中的常见错误,并能更好地利用C++的面向对象特性。在...
【C++程序设计与实践:虚函数和多态性】 多态性是C++编程语言中的一个重要特性,它允许程序员创建具有通用接口的不同类的对象,这些对象在运行时可以表现出不同的行为。多态性分为静态多态性和动态多态性。 1. **...
在C++编程语言中,虚函数表(Virtual Function Table,简称VFT或VTbl)是实现多态性的重要机制,特别是在面向对象编程中。多态性允许子类重写父类的方法,使得相同的消息可以有不同的行为。虚函数表是这种功能的底层...
### C++继承、虚函数与多态性专题 #### 继承的概念与访问权限 **继承**是面向对象编程中的一个核心概念,它允许我们创建一个新的类(派生类),该类继承另一个类(基类)的属性和方法。继承提高了代码的复用性和...
在C++编程语言中,虚函数(Virtual Functions)和多态性(Polymorphism)是面向对象编程的重要特性,它们为代码提供了灵活性和可扩展性。本课件着重讲解了这两个概念及其在实际编程中的应用。 虚函数是C++中实现...
C++的多态性是其面向对象特性的重要组成部分,它允许程序员编写更加灵活和可扩展的代码。多态性体现在程序能够对不同类型的对象发送相同的消息,并根据接收对象的实际类型产生不同的响应。这里有四种主要的多态形式...
第六章主要讲解了多态性与虚函数的概念及其在编程中的应用。多态性是面向对象编程的一个核心特征,它允许不同的对象对同一消息(函数或方法)有不同的响应。多态性分为静态多态性和动态多态性。 静态多态性主要体现...
2013级,C++程序设计课件。第12章 多态性与虚函数,内容 12.1 多态性的概念 12.2 一个典型的例子 12.3 虚函数 12.4 纯虚函数与抽象类 课程主页在:http://blog.csdn.net/sxhelijian/article/details/11890759