我正在考虑将语言(本土 DSL)转换为 C 与 C++ 的问题。
我已经有 15 年没有做过任何“原生”编程了,所以我想检查一下我的假设。
我是否正确假设转换为最新的 C++ 版本 (17) 将使本机编译器能够使用更广泛的“现代”英特尔/AMD CPU 指令,从而产生更高效的可执行文件(除了多线程/内存-model 是 C++ 的一部分,它本身似乎是选择 C++ 的充分理由)?
换句话说,C 编译器从未生成过大部分“更新的”CPU 指令,仅仅是因为 C 的语法更简单,它关于程序员意图的信息太少了吗?我知道我可以使用汇编程序访问所有 CPU 指令,但这正是我不想做的。理想情况下,我希望生成的代码仍然尽可能独立于平台。