std::罪在C++11中的变化

std::sin change in C++11?

本文关键字:变化 C++11 罪在 std      更新时间:2023-10-16

cppreference 包括以下关于 std::sin 返回值的描述:

如果 arg 的大小,则结果可能几乎没有意义 很大(直到C++11)

我试图在当前的C++标准中找到有关此内容的信息,但我一无所获(也许我错过了?C++11 关于std::sin方面到底发生了什么变化?

C++11 将 C 标准参考从 C89/C90 切换到 C99。原始的C标准用于声明(引用自草案):

sin 函数计算 x 的正弦(以弧度为单位)。一个大的量级论证可能会产生一个意义很小或没有意义的结果。

在 C99 中,这段文字被删除了,现在的描述只是:

sin 函数计算 x 的正弦(以弧度为单位)。

我怀疑放弃它的原因是 C99 引入了__STDC_IEC_559__宏,实现可以定义该宏以记录它们对该标准的合规性。根据非常大数的正弦标准,它建议(但不要求)正确的结果,即使对于大幅度参数也是如此。原始C标准的文本可能被视为削弱了该建议。