第一课.绪论

C++概览

C++被定义为更好的C语言,其用途广泛,可以说,没有什么是C++完成不了的任务,从大型桌面应用(Microsoft office)到解释器(Python,Java)与科学计算库(Tensorflow,OpenCV)等,C++均可实现,C++尤其适合当下的物联网浪潮,因为嵌入式的开发,用C++再好不过;
C++优点无数,但学习路线陡峭,C++是公认的最难学的语言,所以要多吸取他人经验,少走弯路;

C++历史发展

最开始应当从语言统一的重要性说起:巴别塔是《圣经·旧约·创世记》第11章故事中人们建造的塔。根据篇章记载,当时人类联合起来兴建希望能通往天堂的高塔;为了阻止人类的计划,上帝让人类说不同的语言,使人类相互之间不能沟通,计划因此失败,人类自此各散东西。
在一定程度上,语言统一有利于科技进步;
大概在1978年时,计算机还处于发展初期,当时的丹尼斯•里奇和肯•汤普森需要更好的工具开发UNIX系统,需要某种“高级”语言以更多地控制所有涵盖操作系统的数据,由此开发了C语言,C++源自1979年,BjarneStroustrup想要做面向对象的开发,于是发明了带类的C,被称作C语言的超集,直至1983年,被正式称为C++;后期,C++引入各种新功能,逐步增强了可用性,1988年STL库诞生,C++委员会发布了第一个国际标准的C++规范,称为C++98;2011年中期,C++标准更新(称为C++11),Boost库对新标准产生了重大影响,一些新模块是直接从Boost库中派生出来的;C++11之后,C++每三年发布一版新标准,每个新标准都可以向历史标准兼容,又新增一些改进特性

C++的特点

C++具备抽象封装特性,这对开发是友好的,微软收益最高的软件office就是用C++开发;
高性能,运行快,占用资源少,这也是C++一直的追求,与硬件的交互仅次于汇编,但汇编是很难移植的,而C++基于编译器,便于移植;
在实际嵌入式开发中,C++是低功耗的,Java的功耗很高,不便于微型嵌入式开发;
C++也有缺点,比如语法复杂,细节过多,学习麻烦;另外,C++开发最好遵守规范,否则代码很难维护,过度的自由使经验不足的开发者感觉不到自由

C++应用场景

1.大型桌面应用程序:微软的office,谷歌的Chrome;
2.网站后台:谷歌的搜索引擎
3.游戏引擎:Unity,3D游戏涉及大量图形渲染,C++可以由设计者精确利用资源,高效把控程序运行
4.深度学习框架:tensorflow
5.数据库:SQL Server,Mongodb
6.嵌入式设备:自动驾驶
对内存和CPU要求高的任务,必须使用C++

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值