2017-11-03 127 views

回答

2

重载二元运算符的至少一个操作数需要由用户定义。但他们不一定都是。

例如,一对合法的,但没用的定义:

enum class foo { bar }; 

void operator+(int, foo) {} 
void operator*(foo, int) {} 

以上,使1 + foo::barfoo::bar*2有效表达式(什么也不做)。

相关问题