【发布时间】:2014-04-02 18:14:21
【问题描述】:
C++ 代码标准由国际标准化组织 (ISO) 定义。 C++ 有许多不同的实现,例如 GCC/G++、libc/libc++、clang (++ too)、Microsoft Visual C++、Intel C++ Compiler 等,因此任何人都可以制作自己的实现(编译器等、运行时库……)并将其称为 C++。
我想知道:
- 是否有与 C++ 实现相关的学科?
- 是否有任何组织(如 ISO)控制这些实施以确保它们符合标准?
【问题讨论】:
-
AFAIK,没有 100% 符合标准的实现......这真的是不可能的,因为标准本身就有错误。
-
该标准是供供应商满足的指导方针,但没有人实施 100% 的标准,只有 100% 的标准。大多数编译器都有非标准添加,没有一个包含标准中的所有内容。例如,GNU/C++ 还没有完全实现 C++11 正则表达式(至少在我上次检查时)。没有强制执行;没有人有权说,“如果它不完全兼容,你就不能称它为 C++,不多不少。”市场倾向于规定实施大多是合规的,或者它们根本不会像其他更合规的实施那样成功。
-
@DavidO:仅供参考,正则表达式在主干中实现,并将在 GCC 4.9 (ref) 中实现。 (不是试图“纠正”你或任何事情(因为你没有错);只是想我会指出)
标签: c++ compiler-construction iso