Delen via


Compilerwaarschuwing (niveau 1) C4537

'object' : 'operator' toegepast op niet-UDT-type

Opmerkingen

Er is een verwijzing doorgegeven waarbij een object (door de gebruiker gedefinieerd type) werd verwacht. Een verwijzing is geen object, maar inlineassemblycode kan het onderscheid niet maken. De compiler genereert code alsof het object een exemplaar was.

Example

In het volgende voorbeeld wordt C4537 gegenereerd en ziet u hoe u dit kunt oplossen:

// 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
    */
}