前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >为什么这么多人惧怕C++?

为什么这么多人惧怕C++?

作者头像
程序员互动联盟
发布2018-03-16 10:45:41
7800
发布2018-03-16 10:45:41
举报
文章被收录于专栏:程序员互动联盟

C++在诞生之处,赢得了很多了口碑,但是随着编程大众化,以及编程语言的简单化趋势的发展,这门语言很多的弊端表现的越来越明显,特别让初学者选择c++作为初级入门语言,整体来说还是偏难。里面涉及到的语法规则太繁琐了,严格意义来说c++不适合做入门语言,但是目前大型的客户端软件框架使用c++作为基础开发语言还不在少数,根本原因又是啥?

是什么导致让c++让这么多程序员用起来不爽,不停的吐糟?

(1).先看历史方面的原因,c++是在c语言基础上面拓展出来的,另外的一套的不同的编程思想(面向对象)但是c++里面为了兼容C语言做了大量怪异的语法,使用的适合陷阱的确优点大,其实java的诞生也c++也是起到了一定的助推作用,c++语言虽然实现了面向对象的概念,但是保留了c语言里面太多的东西,还没有摆脱底层语言的痕迹,使用者还是需要关心指针的释放以及申请,开发者付出的成本还是偏高。

(2).繁杂的语法点,而且新的标准还在变化延伸,举个简单的例子隐式的转化,以及编译错误的处理,让很多初学者都晕菜,太多的语法细节让初学者在学习的时候,产生太多的疑惑,想差不多掌握这门语言,必须经历几次真正的项目的考验,才会对这个语言有点相对透彻的认识,基本要搞懂一个知识点需要付出比别的高级语言花费更多点的精力。

(3).类库的不完善,很多人都说,觉得c语言用的不舒服可以用高手写的类库,但是目前c++开源体系里面类库使用的适合参差不齐,给使用者带来了太多的使用成本,举个简单的例子很多stl模板里面的库函数的实现不支持多线程,就这一点让很多使用c++的编码者觉得使用起来相当的不方便。

列举了以上的几条是不是,难道c++即将被淘汰了?不推荐大家来使用了?

任何一个语言都有其存在的现实意义,一方面存在缺点,也会在另一个方向打开另外一扇门。

(1).c++保留了指针的概念,是最接近c语言的面向对象的语言,所以在执行效率方面比别的面向对象的语言更加高效,同时在兼容c语言,对于已经习惯于c语言开发的小伙伴切入到c++费力气会稍微少一些,而且在保证遵守面向对象概念的同时,还能通过指针直接操作底层的硬件,这就是为什么很多大型的软件框架使用c++的一个根本原因所在,在满足面向对象框架的同时在执行效率或者操作底层硬件方面也有其自身的优势。

(2).都在批判c++语言繁琐,语法混乱,但是同时造就另一个方面,熟悉了这套体系能打造出灵活性极强的框架,这也是为什么很多有经验的c++高手,还是愿意选择c++作为底层框架设计语言,规则再多掌握熟练了,解决问题的速度一样惊人,不建议小白直接选择c++作为入门语言,但是如果具备一定的编程基础了,再去学习使用c++,一样能做出不错的框架。目前流行的安卓底层框架很多都是基于c++搭建而成。

任何语言都有其自身不可替代的优势,不能简单的说行或者不行,只不过出发的角度不一样而已。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-02-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员互动联盟 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档