2017-11-03 17 views

答えて

2

オーバーロードされたバイナリ演算子のオペランドの少なくとも1つがユーザ定義である必要があります。しかし、彼らは両方である必要はありません。例えば

、法的しかし、無用な定義のペア:

enum class foo { bar }; 

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

上記は(何もしない)1 + foo::barfoo::bar*2有効な式になります。

関連する問題