編譯器警告 (層級 1) C4537
'object' : 套用至非 UDT 類型的 'operator'
備註
傳遞的參考是預期物件 (用戶定義型別) 的位置。 參考不是物件,但內嵌組譯工具程式代碼無法區分。 編譯程式會產生程序 代碼,就像對像是 實例一樣。
範例
下列範例會產生 C4537,並示範如何修正此問題:
// 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
*/
}