C++11 重新定义已定义类型的单个运算符。C++ 我想重新定义C++中一个64位无符号整数的位移位算子,这样我就可以说,x

C++11 重新定义已定义类型的单个运算符。C++ 我想重新定义C++中一个64位无符号整数的位移位算子,这样我就可以说,x,c++11,operator-overloading,operators,C++11,Operator Overloading,Operators,如果你能做到这一点,对于读代码的其他C++程序员来说,这将是非常混乱的: int64 x = 92134; int64 y = x >> 3; 并且行为与他们的期望不同,行为与C++标准定义的不同。 P>与C++代码最符合的风格选择是继续使用自己的MySHIFT函数。 int64 y = myshift(x, 3); 如果你能做到这一点,对于读代码的其他C++程序员来说,这将是非常混乱的: int64 x = 92134; int64 y = x >> 3; 并且

如果你能做到这一点,对于读代码的其他C++程序员来说,这将是非常混乱的:

int64 x = 92134;
int64 y = x >> 3;

并且行为与他们的期望不同,行为与C++标准定义的不同。 <> P>与C++代码最符合的风格选择是继续使用自己的MySHIFT函数。

int64 y = myshift(x, 3);

<>如果你能做到这一点,对于读代码的其他C++程序员来说,这将是非常混乱的:

int64 x = 92134;
int64 y = x >> 3;

并且行为与他们的期望不同,行为与C++标准定义的不同。 <> P>与C++代码最符合的风格选择是继续使用自己的MySHIFT函数。

int64 y = myshift(x, 3);

我觉得这很可怕,我提议只是为了好玩,但是。。。如果接受在结构中换位的位数


我觉得这很可怕,我提议只是为了好玩,但是。。。如果接受在结构中换位的位数

按整数做。按整数做。