gpt4 book ai didi

c++ - 为每个基本类型定义了哪些运算符?

转载 作者:太空宇宙 更新时间:2023-11-04 11:48:36 27 4
gpt4 key购买 nike

使用 C# 后,我惊讶地发现 C++ float 没有定义模数运算符。按位运算符显然也不是。我决定学习更多,并开始寻找一张图表,了解哪些基本类型为它们定义了运算符,哪些没有,但我找不到任何具有这种性质的东西。

我知道所有运算符是什么以及如何重载它们: http://en.wikipedia.org/wiki/C%2B%2B_operators

但是,我不知道为每个基本类型定义了哪些运算符。

最佳答案

所有运算符都是为整数类型定义的( charshortintlonglong longenum )。对于浮点类型( floatdoublelong double ),您没有 %并且没有一个“按位”运算符:<< , >> , ~ , & , |^ ,因为它们对 float 没有多大意义。例如,您对 3.3 ^ 6.8 有何期望? ? [1] 或 1.9 % 13.4 ? [1] 浮点除法中没有“余数”,所以很难想象它实际应该给出什么。

如评论中所述,fmod% 做类似的事情.

[1] 这些都是反问,我不指望有人能给出一个好的答案。

关于c++ - 为每个基本类型定义了哪些运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19146533/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com