Share via


Upozornění kompilátoru (úroveň 1) C4537

'object' : 'operator' applied to non-UDT type

Poznámky

Byl předán odkaz, kde byl očekáváný objekt (typ definovaný uživatelem). Odkaz není objekt, ale vložený kód assembleru nemůže rozlišovat. Kompilátor generuje kód, jako by byl objekt instance.

Příklad

Následující ukázka vygeneruje C4537 a ukazuje, jak ji opravit:

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