开发语言漫谈-C++

C++最初的名字为"带类的C"(C with Classes),形象的说明了C++的核心是将C语言从面向过程扩展为面向对象,此时的C++已经有了类、封装、继承等核心概念,为后来的面向对象编程奠定了基础。

不像C很少修订,C++修定过很多次:1998年,C++的第一个国际标准ISO/IEC 14882:1998正式发布。最近的修订是C++20(2020年):C++20是C++历史上的又一个重要里程碑。这次更新引入了一系列新特性和改进,如协程(Coroutines)、概念(Concepts)、模块化(Modules)等。 C++23 是 2023 年 7 月份刚确定下的新标准变化包括引入标准库的模块化支持、扩展 constexpr 、增加并行算法、ranges 扩展、this 推导、引入更多的属性和注解、增加 std::mdspan、std::generator 等新特性。总之C++在越来越复杂的路上越走越远。很多新语言的出现就是因为C++太复杂,但是没一个能撼动C++的地位。

C++入门难,提高难,但上限很高。你适合不适合做技术,看能不能沉浸入C++。一般来说,使用C++的场景都是跟操作系统、跟硬件打交道的。其他程序员都是站在巨人肩膀上,你只能站在地上。最要命的是C++涉及的知识面太广,两个C++程序员之间都可能无法交流和沟通。熟悉(不是精通)C++的程序员都已经是高手了,到了精通阶段就是世外高人了。C++只带刷人属性,不适合的人在进阶阶段就自动劝退了。所以现在C++核心岗招不到人。这些岗位包括:

  1. 系统级(操作系统、驱动程序等)

  2. 游戏开发

  3. 嵌入式系统

  4. 大数据处理(计算、分析)

  5. 人工智能和机器学习

  6. 网络和通信

尤其是人工智能和机器学习领域发展前景非常好。如果你天赋异禀,又能吃亏耐劳,不妨学学这门九阳神功。

相关推荐
0x000713 分钟前
翻译《The Old New Thing》- 为什么 SHFormatDateTime 要接收一个未对齐的 FILETIME?
c++·windows
懒羊羊不懒@14 分钟前
JavaSe—Stream流☆
java·开发语言·数据结构
Js_cold28 分钟前
(* clock_buffer_type=“NONE“ *)
开发语言·fpga开发·verilog·vivado·buffer·clock
周杰伦_Jay41 分钟前
【Go微服务框架深度对比】Kratos、Go-Zero、Go-Micro、GoFrame、Sponge五大框架
开发语言·微服务·golang
杰瑞哥哥1 小时前
标准 Python 项目结构
开发语言·python
shykevin1 小时前
Rust入门
开发语言·后端·rust
QT 小鲜肉1 小时前
【个人成长笔记】将Try Ubuntu里面配置好的文件系统克隆在U盘上(创建一个带有持久化功能的Ubuntu Live USB系统)
linux·开发语言·数据库·笔记·ubuntu
Pointer Pursuit1 小时前
C++——二叉搜索树
开发语言·c++
澪吟1 小时前
C++ 从入门到进阶:核心知识与学习指南
开发语言·c++
热爱编程的小白白1 小时前
【Playwright自动化】安装和使用
开发语言·python