編譯器警告 C4959
無法在 /clr:safe 中定義 Unmanaged 結構 'type',因為存取其成員會產生無法驗證的程序代碼
備註
存取 Unmanaged 類型的成員將會產生無法驗證的 (peverify.exe) 映像。
如需詳細資訊,請參閱純和可驗證的程序代碼(C++/CLI)。
Visual Studio 2015 中已淘汰 /clr:safe 編譯程序選項,在 Visual Studio 2017 中不受支援。
發出這個警告即表示發生錯誤,而且可以使用 warning pragma 或 /wd 編譯器選項予以停用。
範例
下列範例會產生 C4959:
// C4959.cpp
// compile with: /clr:safe
// Uncomment the following line to resolve.
// #pragma warning( disable : 4959 )
struct X {
int data;
};
int main() {
X x;
x.data = 10; // C4959
}