从cppreference,可以说模运算符的原型T T::operator%(const T2 &b) const;来自内部类定义和T operator%(const T &a, const T2 &b);外部类定义。我不知道这里是否是我需要寻找问题答案的地方。
我从这个例子中提出的问题:
int i = 2;
float f = 4.4;
cout << f % float(i); // ERROR
Run Code Online (Sandbox Code Playgroud)
所以:
int?如果是,它在 cppreference 中写在哪里?)f变量转换int为转换吗?收到的错误是invalid operands of types 'float' and 'float' to binary 'operator%'。我期望是类型int和的无效操作数float。