C++框架

编程范例——过程式子编程——模块化——单独编译——异常处理(结构化编程)

——数据抽象——用户类型——具体类型——抽象类型——虚函数(面向对象)

——泛型编程——容器——算法——语言和程序(泛型编程)

图片发自简书App


结构化编程——面向对象式编程——泛型编程

结构化编程(POP):子程序,程式码区块,for循环和while循环,传统的C语言。

面向对象编程(OOP):模型用于体现现实世界中事物的特征,任何模型都不能反映现实世界事物的一切具体特征,只能对事物特征和变化规律进行抽象。面向对象就体现了这样一种抽象思维过程和面向对象的方法,是人们对客体认识的深化。

OOP=对象+类+继承+多态+消息,反映了重用性,灵活性和扩展性。对象是基本模块,是类的实例化,消息用于模拟现实世界中实体间的联系。

泛型编程(GP):将算法与数据结构完全分离,算法是泛型的,不与任何特定数据结构或对象类型系在一起。泛型编程的代表作品是STL,可分为容器,迭代器,空间配置器,配接器,算法,仿函数六个部分。容器是模板,利用已有的实现构造自己的特定类型下的数据结构。迭代器是遍历容器中值的通用表示,迭代器将算法与容器联系起来。算法包括比较,交换,查找,遍历操作,复制,修改,移除,反转,排序,合并等等。

容器的类型:顺序容器(可变长动态数组vector,双端队列deque,双向链表list),关联容器(集合set,多重集合multiset,映射map,多重映射mutimap)

容器适配器:栈(stack),队列(queue),优先级队列(priority_queue)

三者的联系:面向对象是运行时问题空间的多态,泛型编程是编译时算法空间的多态(静态多态),面向对象是对data和operation的抽象,泛型是对class和operarion的抽象。结构化编程更贴近机器的运行模式,面向对象编程更贴近人的思维模式,类似于自然语言。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 面向对象编程(OOP) 在前面的章节中,我们学习了Kotlin的语言基础知识、类型系统、集合类以及泛型相关的知识。...
    Tenderness4阅读 9,920评论 1 6
  • 1.面向对象的特征有哪些方面? 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面...
    浪花易逝阅读 3,833评论 0 5
  • 原文链接:https://github.com/EasyKotlin 在前面的章节中,我们学习了Kotlin的语言...
    JackChen1024阅读 4,286评论 0 3
  • 所有知识点已整理成app app下载地址 J2EE 部分: 1.Switch能否用string做参数? 在 Jav...
    侯蛋蛋_阅读 7,282评论 1 4
  • 说过很多话,没刻意去记得什么,也就差不多都忘记了。一些应该记得或者不想忘记的事情,自然而然的会留下来。 很羡慕世界...
    加七儿阅读 2,187评论 0 0