假设操作系统/内核是用 C++ 编写的,并且不会“做”任何纯 C 风格的东西,而是公开基于成熟 C++ 标准库构建的 C 标准库。这可能吗?如果不是,为什么?
PS:我知道 C 库是“C++ 的一部分”,但假设它在内部基于基于 C++ 的实现。
小更新:似乎我在这里引发了关于我的规则“允许”什么的讨论。一般来说:C 标准库实现应该尽可能使用 C++/ Right (tm)
。我主要考虑算法和在幕后对静态类对象进行操作。我并没有真正排除任何语言特性,而是试图将重点放在理智的 C++ 实现上。关于 setjmp 示例,我看不出为什么有效的 C(将使用其他在 C++ C 库中预先实现的部分或根本不使用任何其他库函数)会违反我的“规则”。如果 C++ 库中没有对应的库,为什么还要争论它的使用。