既然C+这么难学,为什么还有人“自讨苦吃”?

为什么C++让人觉得这么难学?

C++ 是出了名的复杂、难学、难用,难倒很多英雄好汉,让很多在深陷其中无法自拔但又不舍得抽身离去。

首先,C++的出现是想要克服C语言里面由于语法规则不清晰而在运行过程中出现的一些错误,但是这也让后面刚接触C++的朋友们觉得学的太过辛苦,好多条条框框卡的死死的,必须要按照语法规则走才能进行下去,而且就语法细节来讲,C++需要掌握的细节多如牛毛,几乎每个知识点都附带着很多细节点,而且更加要命的是C++语法规则还在不停的延伸,这也导致很多程序员从事C++语言编程多年,对于有些C++语法规则还是觉得陌生的很。

其次,互联网行业本来就属于技术更新迭代很快的行业 ,而C++语言的更新速度也是相当惊人,想想等你费了九牛二虎之力掌握了一些语法细节之后,发现新的更新完的时候,已经把之前的语法规则都丢弃了,对于一门还在不停升级到编程语言,这种情况出现的不要太过频繁~~

最后,C++不光可以进行泛型编程,还可以操作指针,所以如果既想追求性能的极致化,还想编程模式灵活性,背的担子异常沉重,这也是为什么很多网友这也是为什么很多人在学完C++之后,再去学习C语言会感觉异常的轻松自如,突然有种解决的感觉,其实很多C++语法学习不是让你如何去使用,更多的是告诫你不能怎么用,这是最难受的,学了一堆语法发现不能立即用上,还需要在特殊的场景才能使用上,对于绝大部分对于这门编程语言还没熟悉之前,算是一种精神的折磨。

C++有什么核心竞争力?

C++,一门名声在外的编程语言。作为一门多范式的通用编程语言,它适用的领域非常广泛,小到嵌入式,大到分布式服务器,到处可以见到 C++ 的身影。

它的发展前景也非常广阔,作为未来趋势的人工智能和机器学习,外衣是Python(模型描述),但是内核还是 C++(高性能运算) 。

此外,中国几乎所有大学计算机专业都会开设 C++ 课程,它也就成了很多人初入编程的第一语言,为什么 C++ 会受到这么大的关注呢?我总结了3 点它的核心竞争力:

抽象能力:这意味着较高的开发效率,同时,更重要的是,不会因抽象而降低性能。

性能:虽然完成同样的功能,C++ 需要的代码行数可能是 Python 的三倍,而性能则可以轻松达到 Python 的十倍以上。

功耗:不管是移动设备,还是服务器,我们都越来越关注功耗。使用 C++ 通常意味着低功耗,电池能跑更长时间,服务器少花点电费。

C++不可替代

虽然C++语言被认为是最难学的编程语言,但是它和C语言也是高性能应用的唯一选择,比如很多大型游戏系统,出于高性能图形动画的需求,必须使用C和C++来实现,才能保证效率;很多大型网站的后台数据库,为了响应高吞吐量,高并发量的客户请求,也需要使用C。

还有一点不可否认,C++是很多架构师的最爱,也是很多编程大咖的最爱,记得十年前在某著名编程网站的论坛里面,特别是C++论坛里面经常见很多C++大咖在里面指导江山,很多小白忙活了半天的代码,让大咖几句话搞掉,在真正掌握这门编程语言,并且深深的掌握其内在规则之后,使用起来会感觉特别舒畅,仿佛把之前所有的阴霾一扫而空。

而且现在很多有名的软件框架都能看到C++的影子,其实很简单,在进行面向对象的框架设计还能不影响效率首选只能是C++,现在大家使用的安卓手机的框架层很多代码都是C++,还有大家天天使用的浏览器内核代码几乎全是C++,在很多领域C++有着不可比拟的优势,学会了会明白为啥这门语言属于编程语言的王者,为什么有这么多人学不会还要硬着头皮继续学,可以说C++是一门啃着最有滋味的编程语言,痛苦并快乐着。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201106A0ELNK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券