Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
"instance_dereference_operator" : význam dereferencování popisovače se může změnit, pokud existuje operátor "operátor" definovaný uživatelem; napište operátor jako statickou funkci, která má být explicitní pro operand.
Poznámky
Když do spravovaného typu přidáte přepsání uživatelem definované instance operátoru dereference, můžete potenciálně přepsat schopnost operátoru dereference typu vrátit objekt popisovače. Zvažte vytvoření statického operátoru dereference definované uživatelem.
Další informace naleznete v tématu Popisovač k operátoru objektu (^) a sledovací referenční operátor.
Operátor instance navíc není dostupný pro jiné kompilátory jazyka prostřednictvím odkazovaných metadat. Další informace naleznete v tématu Uživatelem definované operátory (C++/CLI).
Příklad
Následující příklad vygeneruje 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;
}