发布时间:2022-03-28 15:12:10来源:转载
C++的关键特点,是有性能优势的同时提供了足够多的抽象能力,使得它有能力构建比较复杂的系统(vs C);同时又出现得足够早,有足够的历史包袱:大量已存在的SDK使用C++,于是你不得不用C++(vs C#、Rust)。那么,C++ 究竟难在哪里?
看过编程语言排行榜的都知道,“c/c++”自02年以来,不管时代如何发展,其排名一直在前五以内,足见其在编程语言界的地位。编程界流行这么一句话:c几乎什么都能做,c++几乎什么都能做好,足见其功能的强大。
C++的能力上限非常高,可以说在软件领域没有C++做不好和做不到的事情,只是开发者水平和成本问题,而C++之后出现的语言都有些无论如何都做不好或根本做不到的事情。
C++虽然能力上限高,但是达到这个上限对开发者的要求也很高,不是普通程序员可以做到的。
其它语言虽然上限低,但是只要不去碰那些极端要求的领域,在各自的优势领域里还是能超越C++的,对工程师要求也没那么高,但是在全领域超越C++的目前还没有。
C++的难点在于给开发者的自由度太高了,什么都可以做,限制很少,导致水平不够的人也可以胡搞瞎搞,把代码写的乱七八糟,然后怪C++太难太复杂。
学好C++,较重要的是你要有学C++的需求,就是个人目标是要成为程序员,成为开发基础设施,设计构建软件平台的人,没有宏大的理想不会有足够的动力去学C++的,过程中太多困难会导致放弃的。
“引用”与指针的区别是什么?
1) 引用必须被初始化,指针不必。
2) 引用初始化以后不能被改变,指针可以改变所指的对象。
3) 不存在指向空值的引用,但是存在指向空值的指针。
指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;而引用本身就是目标变量的别名,对引用的操作就是对目标变量的操作。
流操作符<<和>>、赋值操作符=的返回值、拷贝构造函数的参数、赋值操作符=的参数、其它情况都推荐使用引用。
c++和python的有哪些不同
烟台C/C++开发培训机构哪家靠谱?
人工智能编程语言有哪些?
福州达内C/C++开发专业吗?
洛阳哪里有C/C++开发培训学校?
温州C/C++开发培训机构推荐