1.历史背景
1.1c++的江湖地位
可以看到大公司对某门语言的影响,做大数据的必须要会java,因为甲骨文公司。做.net的必须会C#,因为微软。
python,php,JavaScript,脚本语言。无需编译,直接就可以运行
Oc名次的更迭从前五跌到20出外仅仅一年,一个是官方推荐swift,一个是市场饱和
Go 一年的时间上升的非常块,Google推出,做web服务器,大数据的管理,效率媲美c++,c。。。几年内进前十没关系。
开发效率:面向对象,大软件开发
执行效率:比c稍差。
前五的语言:
1.2 C++之父:Bjarne Stroustrup(本贾尼.斯特劳斯特鲁普)
1979,Cpre,为C语言增加类的机制 将对象加进来,编写编译器,将标C不支持的转换为标C支持的,后来直接抛开了C的编译器
1983 发布全新编程语言 C with class ,后来改名为c++ 所以c++产生的年份为1983
1985,CFont 1.0 《The C++ programming Language》 基于C,但是添加了特别多的特性。不能单纯认为封装C。可以说最难的语言之一。
语法比较多
1.3 C++发展过程
1987,GNU 开始支持C++
1990,Borland公司退出 C++编译器(BC编译器),当时地位如同现在的微软,然而现在。。。
1992,Microsoft C++(VC)
1998, ISO C++98标准 现在绝大多数支持
2003, 对C++98进行修订, C++03
2011, ISO C++11标准(又称C++0x),默认不支持,需要自己进行配置
2014, ISO对C++做了部分拓展, 即C++14,
*2017, C++17可能会推出。。。
2 应用领域
2.1 游戏开发 主流语言之一 可以跨平台
2.2 科学计算
2.3 网络通信 物联网时代即将到来。。。网络非常重要,特别是对于嵌入式而言,
根据大数据推算南瓜的成熟时间,根据物联网传感器准确定位,实现从一个南瓜还未成熟已经有买家定下
(ACE) C++开发的网络库 几十万行的代码量,
2.4 操作系统和设备驱动 C++具备替代c的可能
2.5 其它..
3 C和C++
3.1 都是编译器语言 采用预处理,编译,汇编,链接。
3.2 都是强类型语言,但是C++更强, 每个数据都必须要对应具体的数据类型,进行强制类型转换的时候,C可行C++不可行
int a; void * pi = &a; (void * 可以接收任何地址 万能指针)
int *pa = pi;// c可以C++不行 void* 的类型是不确定的,C++
int i;
int i;
int main(){}; 可以编译通过。。 没有初始化,所以第二条当做隐式声明