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.
«object» : «operador» aplicado ao tipo não UDT
Observações
Uma referência foi passada onde um objeto (tipo definido pelo usuário) era esperado. Uma referência não é um objeto, mas o código assembler embutido não é capaz de fazer a distinção. O compilador gera código como se o objeto fosse uma instância.
Example
O exemplo a seguir gera C4537 e mostra como corrigi-lo:
// C4537.cpp
// compile with: /W1 /c
// processor: x86
struct S {
int member;
};
void f1(S &s) {
__asm mov eax, s.member; // C4537
// try the following code instead
// or, make the declaration "void f1(S s)"
/*
mov eax, s
mov eax, [eax]s.member
*/
}