一、C++概述
1.嵌入式开发中为什么选择C++语言?
(1)面向过程编程的特点
C语言特点:C语言是在实践的过程中逐步完善的
·没有深思熟虑的设计过程
·使用时存在很多“灰色地带”
……
·残留量过多低级语言的特征
·直接利用指针进行内存操作
……
面向过程的编程特点:
面向过程程序设计:数据结构+算法
·主要解决科学计算问题,用户需求简单固定
·特点:分析解决问题所需要的步骤
利用函数实现各个步骤
依次调用函数解决问题
·问题:软件可重用性差
软件可维护性差
构建的软件无法满足用户需求
(2)面向对象编程的特点
面向对象的编程特点:
面向对象程序设计:由现实世界建立软件模型
·将现实世界中的事物直接映射到程序中,可直接满足用户需求
·特点:直接分析用户需求中涉及的各个实体
在代码中描述现实世界中的实体
在代码中关联各个实体协同工作解决问题
·优势:构建的软件能够适应用户需求的不断变化
直接利用面向过程方法的优势而避开其劣势
C++语言特点:高效的面向对象语言,并且能够兼容已经存在的代码
2.C++为什么难学?
C++支持的编程格式:
·过程式
·数据抽象
·基于对象
·面向对象式
·函数式
·泛型形式
·模板元形式
值语义和对象语义:
值语义可以拷贝与赋值,对象语义不可进行拷贝与赋值
3.C++相关基础知识点
(1)C++之父是谁?
本贾尼·斯特劳斯特卢普
1982年,美国AT&T公司贝尔实验室的Bjarne Stroustrup博士在c语言的基础上引入并扩充 了面向对象的概念,发明了—种新的程序语言。为了表达该语言与c语言的渊源关系,它被命名为C++。而Bjarne Stroustrup(本贾尼·斯特劳斯特卢普)博士被尊称为C++语言之父。
(2)C++语言的标准
C++ 98 标准
C++标准第一版,1998年发布。正式名称为ISO/IEC 14882:1998[17] 。
C++ 03 标准
C++标准第二版,2003年发布。正式名称为ISO/IEC 14882:2003[18] 。
C++ 11 标准
C++标准第三版,2011年8月12日发布。正式名称为ISO/IEC 14882:2011[19] 。