編譯器錯誤 C2675
一元 'operator' : 'type' 不會定義此運算符或轉換成預先定義運算符可接受的類型
使用一元運算符時,也會發生 C2675,而且類型不會定義運算符或轉換成預先定義運算符可接受的類型。 若要使用運算子,您必須針對指定類型進行多載,或針對已定義運算子的類型定義轉換。
範例
下列範例會產生 C2675。
// C2675.cpp
struct C {
C(){}
} c;
struct D {
D(){}
void operator-(){}
} d;
int main() {
-c; // C2675
-d; // OK
}