次の方法で共有


コンパイラ エラー C2677

二項演算子 'operator' : 型 'type' を扱うグローバルな演算子が見つかりません (または変換できません)

この演算子を使うには、型を指定してこの演算子をオーバーロードするか、この演算子が定義された型への変換を定義する必要があります。

次の例では C2677 が生成されます。

// C2677.cpp
class C {
public:
   C(){}
} c;

class D {
public:
   D(){}
   operator int(){return 0;}
} d;

int main() {
   int i = 1 >> c;   // C2677
   int j = 1 >> d;   // OK operator int() defined
}