編譯器錯誤 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
}