Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
«instance_dereference_operator»: o significado de desreferenciar um handle pode mudar quando existe um operador definido pelo utilizador; escreva o operador como uma função estática para tornar explícita a relação com o operando
Observações
Quando você adiciona uma substituição de instância definida pelo usuário do operador de desreferência em um tipo gerenciado, você potencialmente substitui a capacidade do operador de desreferência do tipo de retornar o objeto do identificador. Considere escrever um operador de desreferência estático definido pelo usuário.
Para obter mais informações, consulte Manipular para operador de objeto (^) e Operador de referência de rastreamento.
Além disso, um operador de instância não está disponível para outros compiladores de linguagem por meio de metadados referenciados. Para obter mais informações, consulte Operadores Definidos pelo Utilizador (C++/CLI).
Example
O exemplo a seguir gera 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;
}