栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C++三大特性

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C++三大特性

C++三大特性
  • 前言
  • 一、封装
  • 二、继承
  • 三、多态


前言

C++三大特性—封装、继承、多态。
封装目的是实现代码模块化。
继承目的是实现代码扩展。
多态目的是分为静态多态和动态多态。静态多态:函数重载和泛型编程。动态多态:虚函数重写。

一、封装

封装就是将数据和行为(或功能)有机结合起来,形成一个整体。把数据和处理数据的操作结合形成类,数据和函数都是类的成员。增强安全性和简化编程。对外隐藏实现细节暴露公共接口。外部通过接口来调用。
封装类的访问类型:
私有成员(private),只有此类的成员函数才能访问。
保护成员(protected),类和派生类的成员函数都能访问,但类外不阔以访问。
公有成员(public),可以在类外访问。

特点:隔离变化,提高复用性,提高安全性。
缺点:封装太多,影响运行效率。使用者不知道代码的具体实现。

二、继承

继承就是A类被B类继承,A类为父类,B类为子类。B类继承Al类的所有公共和保护成员数据(属性)和成员函数(方法)。子类可以重新定义父类某些属性,重写父类的某些方法,即覆盖父类的某些属性和方法。使其获得与父类不同的功能。

优点:1、减少重复代码,增加复用性。
2、让类与类之间产生关系,是多态的前提。
3、增加了类与类之间的耦合性。
缺点:1、继承在编译时刻就定义了,无法时刻改变父类的继承实现。
2、父类至少定义了子类的部分行为,父类改变可能影响子类的行为。
3、如果继承下来的子类不适合解决新问题,必须重写或替换父类,这种依赖关系限制了灵活性。

三、多态

多态:一个接口多种实现状态。多态的出现大大提高了程序的扩展性。
动态多态,是基于封装和继承的来实现的,多个子类对继承于一个父类的虚函数进行重写,来实现不同状态。
静态多态分两种,一种在同一个作用域对函数进行重载(函数名相同,函数参数列表不同),另一种是对函数进行模板化,忽略数据类型强调数据操作。

多态的体现:
父类引用或指针指向子类对象。
父类的引用或指针可以接受子类对象。

多态的前提:
必须存在父类与子类的继承关系。
父类中必须有虚函数。
子类必须重写父类的虚函数。
父类引用或指针指向子类对象。

多态的弊端:
易读性不好,调试困难。
模板只能定义在.h文件中,当工程大了后编译耗时。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/879304.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号