Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
"instance_dereference_operator" : innebörden av att avreferera en handle kan ändras när en användardefinierad operator finns, skriv operatorn som en statisk funktion för att vara explicit om operanden.
Anmärkningar
När du lägger till en användardefinierad åsidosättning av dereferenceoperatorn i en hanterad typ kan du åsidosätta möjligheten för typens dereferenceoperator att returnera referensobjektet. Överväg att skriva en statisk, användardefinierad dereferenceoperator.
Mer information finns i Hantera till objektoperator (^) och spårningsreferensoperator.
Dessutom är en instansoperator inte tillgänglig för andra språkkompilatorer via refererade metadata. För mer information, se User-Defined Operators (C++/CLI).
Example
I följande exempel genereras C4383.
// C4383.cpp
// compile with: /clr /W1
ref struct S {
int operator*() { return 0; } // C4383
};
ref struct T {
static int operator*(T%) { return 0; }
};
int main() {
S s;
S^ pS = %s;
T t;
T^ pT = %t;
T% rT = *pT;
}