网站建设资讯

NEWS

网站建设资讯

C++面向对象之多态的实现和应用详解-创新互联

前言

十载的云龙网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销的优势是能够根据用户设备显示端的尺寸不同,自动调整云龙建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“云龙网站设计”,“云龙网站推广”以来,每个客户项目都认真落实执行。

本文主要给大家介绍的是关于C++面向对象之多态的实现和应用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

多态

大家应该都听过C++三大特性之一多态,那么什么多态呢?多态有什么用?通俗一点来讲->

多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。当多态应用形参类型的时候,可以接受更多的类型。当多态用于返回值类型的时候,可以返回更多类型的数据。多态可以让你的代码拥有更好的扩展性。

多态分两种分别为静态多态和动态多态:

  • 静态多态:静态多态就是重载,因为是在编译期决议确定,所以称为静态多态。
  • 动态多态:动态多态就是通过继承重写基类的虚函数实现的多态,因为是在运行时决议确定,所以称为动态多态。

而我们主要今天来看动态多态的问题。比如我们来看下面的代码,就是简单的动态多态:

class Person 
{ 
public: 
 virtual void BuyTickets() 
 { 
 cout << " 买票" << endl; 
 } 
 
protected: 
 string _name; // 姓名 
}; 
 
class Student : public Person 
{ 
public: 
 virtual void BuyTickets() 
 { 
 cout << " 买票-半价 " << endl; 
 } 
 
protected: 
 int _num; //学号 
}; 
 
void Fun(Person& p) 
{ 
 p.BuyTickets(); 
} 
 
void Test() 
{ 
 Person p; 
 Student s; 
 Fun(p); 
 Fun(s); 
} 
int main() 
{ 
 Test(); 
 system("pause"); 
 return 0; 
}

另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:C++面向对象之多态的实现和应用详解-创新互联
链接分享:http://cdweb.net/article/dsjedj.html