^^ c++ 当然就是整个计算机科学

1,ideal Lang

计算机科学,在程序设计语言上的发展,整体处在相对低级的阶段,主要是相对于 ideal Language 而言的。

这个世界上存在一种语言,及其编译器,它能够达到一个效果:

人类写得任何一段代码,ideal-compiler 都能够从程序最高阶同义的层面,生成效率最高的二进制 obj 文件。

我们首先要承认,

(1)人类并没有发明ideal Language;

(2)ideal Language 又肯定是可以存在的;

(3)但 ideal Language 确实还发明不出来。

2,实际的语言

基于 ideal Lang 的未出现,相当于我们承认了这样一个事实,任何编程语言的程序设计,都必须考虑它运行之上的目标机器和系统软件。

那么,在这个层面上,C++ 就是整个计算机科学

运行效率,开发效率,各种语法背后的机制,大量的 言规范本身的 api,都需要透视整个计算机系统来达到对 C++ 高效的应用,和各种错误的避免与解决。

STL 沉淀了最经典的数据结构与算法

模版增强了预编译器的作用

多态实现的原理

封装效果的实现

异常处理的产生与处理

多姿多彩的编译选项的实现原理

多线程机制的实现

原子操作的实现

这些工具怎么用是最佳实践,很多都依赖对整个编译系统和计算机系统的理解,依赖于理解 C++ 源码如何一步步变成机器码,以及理解为何变成这样的机器码才是最佳的。

3,编译器趋势

编译器理论,在框架层面是由形式语言来维持的,无论是前段词法语法等,代码优化也有很多图的算法在起作用。

往后随着AI的崛起,编译器开发,将有以前的计算机科学家开始转到数学家手上

相关推荐
apcipot_rain5 小时前
C++转Java日记(04)
java·开发语言·c++
NEFU_Jyj5 小时前
牛客周赛R168
算法
WL学习笔记7 小时前
vector模拟实现
c++
蜗牛一步步往上爬9 小时前
第十六章 C++语言在深度学习中的应用
开发语言·c++·深度学习
Navigator_Z13 小时前
LeetCode //C - 1317. Convert Integer to the Sum of Two No-Zero Integers
c语言·算法·leetcode
wo_jack13 小时前
C++ 入门笔记(十六):第16课 vector 模拟实现十问十答 —— 从三指针到迭代器失效
c++·后端·面试·stl·vector
D e re k ZH13 小时前
C++ 标准库算法全景指南
数据结构·c++·算法
冻柠檬飞冰走茶14 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
雪落漂泊15 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法