浅谈为什么学习c++?

笔者可以列出一些事实,表明c++的重要性

1, 目前操作系统,编译器,数据库等等大型系统都是c++或者C语言编写的,使用C++开发的软件可以完美的和这些大型系统匹配,无需转换。

2,效率快,工业软件CAD,photoshop,服务器软件等等都是c++编写的,毕竟基于c++编写的软件都是事先编译为二进制软件。当然软件执行的效率不仅和语言有关,还和设计者的水平,数据结构算法有关,好的设计者用C#,Java都能设计出效率快的软件,水平差的设计者即使用c++,可能设计出的软件执行效率很慢。但是同一设计者用同一数据机构,同一算法,分别基于c++和Java,C#,无疑肯定基于c++开发的软件执行效率是最快的。

3 库也多,在很久以前c++支持c98,那时的人们认为c++相关的现成的东西少,做什么都要造轮子(毕竟那时Java,c#现成的库很多,不用开发者封装,开发效率快),但是现在c++已经支持到c++20以上了,很多现成的封装好的库(c++开发维护者一直在努力)。

4 相关的图形库也多,而且很出名,比如基于c++的图形库Qt,MFC,还有致远科技开发的AWTK。都是基于或者支持C++的。h5很火,在桌面市场占率很大,但是图形库Qt也是占有率很大,并且在持续上升,比如Qt库,跨平台,嵌入上位机软件基本都是Qt开发的,毕竟占用资源少,不可能一个嵌入式设备还要搞一个浏览器在里面吧,毕竟嵌入式机器资源本来就紧张。

5 学会C++,再去学c#或者Java,真的很轻松。拿笔者本人来说,因为公司以前产品是基于c#的winform界面产品,但是因为某些原因,高层决定用Qt代替C#,我当时打开c#代码就能理解功能,只有少数的语法需要查下(引用和get,set)。几个月之后我的C#和winform水平已经很高了,叫我基于c#和winform开发软件,那就是小case。

6 很多重要的开源软件都是c++写的,比如大型软件CAD,CAM,迅雷,YY语音,WPS等等。小软件Redis Desktop Manager, 等等。 如果要学习他们的源代码,学习他们的设计思想,你就必须要会c++。

你可能感兴趣的:(c++,学习,c++)