看过编程语言排行榜的都知道,C/C++自02年以来,不管时代如何发展,其排名一直在前五以内,足见其在编程语言界的地位。编程界流行这么一句话:C几乎什么都能做,c++几乎什么都能做好,足见其功能的强大。
大家都知道C++完全兼容C,C++是c语言的增强版,如果没有学习过C语言或者先学习的其他语言,比如C#,再学习C++就会觉得好难呀,那么C++相比其他语言到底难在哪里呢?
一、C++历史包袱太多
C++是上世纪80年代的发明,算是比较古老的了,在长期的发展中,存在大量的历史问题,在解决某个问题时,面临的选择太多,为了兼容以前的代码和以前的规范,不得不使整个系统复杂庞大。
二、C++没有一个唯一的大东家
我们知道很多语言背后都有一个团队在运营,比如微软的c#、甲骨文的java、谷歌的go,再看C++,它不隶属于任何一个团队,它没有唯一的编译器开发商,微软的msvc、linux的g++,还有clang等等,这么多厂商,谁也不占主导地位,谁也不听谁的,最后只能成立一个C++标准协会,大家协商