从零开始学习C++。当初应该学得仔细一点的哭

概述

  1. c++相对c增加了那些特性?

c语言编程原理-结构化编程 (自顶向下):将大型任务划分成小型的易于编写的模块

虽然结构化编程的理念提高了程序的清晰度和可靠性,并且便于维护,但是还不够

相对c,c++主要增加了:面向对象的编程泛型编程

  1. 什么是面向对象编程
  • 面向对象的编程OOP

与强调算法的过程性编程不同,OOP强调的是数据,试图让语言来满足问题的需求,设计与问题本质特征相对应的数据格式。

这个数据格式就是类,而对象就是根据这种规范构造的数据结构

例如游戏中的怪物数据部分可以定义外形,生命值等,操作部分可以是技能,死亡方式等,如果有多个怪物,那就创建多个对象。ps:自己瞎举的例子

OOP编程并不仅仅是将数据和方法合并成类定义,还有助于创建可重用的代码,这将大大减少重复的工作:信息隐藏(封装)可以保护数据,以免遭到不适合的访问;多态可以为运算符和方法创建多个定义,通过编程上下文来来确定使用哪个定义;继承可以从旧类派生出新类

3.什么是泛型编程

  • 泛型编程

泛型编程的目标与OOP相同,就是使重用代码和抽象通用概念的技术更简答

泛型编程独立于特定的数据类型,提供了执行常见任务(对数据排序或合并链表)的工具。c++有很多类型如整数,浮点数,长整型,用户定义的由多种类组合的复合结构。如果要对不同类型的数据进行排序,通常要为每种类型创建排序函数。泛型编程可以只编写一个泛型,并将其用于各种数据类型。c++模板提供了完成这种任务的机制。