关于C++用处解答

时代的发展,越来越多的编程语言开始出现。C++在编程领域的霸主地位开始受到严重挑战,甚至C++在许多领域的应用正在逐渐被顶替。许多人为了编程语言的圣战争论不休,小编也曾经为了这个问题而迷惑。这个问题困恼了小编很久之后,终于有了一点体会。

C++到底有多强大?
C++能够精确操作内存数据位,精确的指定cpu操作。当自动内存管理类型的编程语言出现的时候,人们欢呼雀跃。然而很多人都没有意识到,编程的资源管理并不等同于内存管理。换句话说,自动内存托管并不能治理内存泄露问题,内存泄露问题依然存在。自动内存托管不是解决问题,而是掩盖问题。
C++强大的抽象能力无须质疑。C++的抽象能力能够使用任何环境,因为它提供了多重编程范式:面向过程、面向对象、面向模板、甚至是函数式。C++无所不能。
尤其是面向过程与面向对象能力,这个抽象是编程领域半个多世纪实践总结的精华。能够完整的描述真实世界的强悍能力。
C++不会成为你的阻碍。
如果你的程序出现了内存泄露问题,出现了段错误,出现了空指针......,这只能说明你对整个程序的运行机制了解的依然不全面,你不理解自己开发的程序。那么你要做的是详细分析整个程序的机制,解决问题。而某些编程语言试图掩盖这一问题,那么就会造成程序运行结果的不确定,造成看上去是好的,测试起来也是好的,但是就是在某些关键时刻造成系统崩溃的境况。这样的程序员无论用什么样的编程语言都开发不出好的程序。
为什么C++提供的庞大到令人恐惧的细节操作没有让开发者崩溃,就是因为其具有的强横的抽象能力,一系列相关细节都会被封印到一个具体模块中,只要模块的开发者管理好这些细节,外面的调用者不了解这些细节完全没有问题。很多人厌烦C++这些细节问题,认为其肮脏。然而,现实世界就是这么肮脏,编程就是肮脏,假装自己清高没有任何意义。早晚需要面对这些问题。
现实中有很多奇葩语言的存在实在是让人无法理解,某些编程语言甚至将元祖和列表甚至是矩阵作为基础数据类型,实在是令人费解。难道它提供的抽象机制都是摆设么?
C++具有丰富的类库和环境,这是其他语言无法比拟的。绝大多数领域、绝大多数目的,都有专门的类库供C++使用,至少是存在可被C++调用的接口的。例如,桌面编程的GUI类库就有Qt、WxWidget、MFC、Cocoa、Duilib......;各种机器学习的类库;各种网络库;各种计算库;各种游戏引擎......
posted @ 2019-10-12 14:58  skam2  阅读(407)  评论(0)    收藏  举报