【发布时间】:2013-10-02 20:45:53
【问题描述】:
使用过 C# 后,我惊讶地发现 C++ 浮点数没有定义取模运算符。显然也不是按位运算符。我决定了解更多信息,并开始寻找一张图表,其中列出了哪些基本类型为它们定义了运算符,哪些没有,但我找不到任何类似的东西。
我知道所有运算符是什么以及如何重载它们: http://en.wikipedia.org/wiki/C%2B%2B_operators
但是,我不知道为每种基本类型定义了哪些运算符。
【问题讨论】:
-
不是在语言规范里吗?也许不是全部都在一个地方,但是如果您查看每种类型的部分,我希望它会说明定义了哪些运算符。
-
将 fmod() 用于浮点模数。并且按位运算符对您的浮点表示过于具体(尾数和指数之间的分配,许多操作系统允许您在运行时更改)。
-
@Bathsheba 哪个操作系统可以让你这样做?我从来没有见过一个。浮点是由 IEEE 754 和硬件定义的,而不是由操作系统定义的。