对于不同的平台(Linux,Windows等),多次编写C++编译器是真的吗?

Che*_*ole 3 c++ linux compiler-construction iso cross-compiling

据我所知,C++是ISO标准,因此它们提供了某种标准和要为即将发布的版本实现的功能列表.

是不是每个平台所有者都会为这些标准编写自己的实现?

或者是否有任何核心编译器代码实现一次,然后每个其他平台将编写包装器?

或者他们是从头开始编写自己的C++编译器?

el.*_*ado 6

是的,不是.编译器基本上由两部分组成:解析器(又名前端)和代码生成器(又称后端).Parser负责识别C++语法.代码生成器根据从解析器获取的信息为目标平台(硬件类型和操作系统)构造机器代码.虽然解析器与平台无关,但代码生成器部分与目标平台绑定.因此,为了支持新平台,可以重用现有的解析器部分,但必须编写新的代码生成器部分.