Предупреждение компилятора C4959
не удается определить неуправляемую структуру "type" в /clr:safe, так как доступ к его членам дает неуправляемый код
Замечания
Обращение к члену неуправляемого типа приводит к формированию непроверяемого (peverify.exe) образа.
Дополнительные сведения см. в разделе "Чистый и проверяемый код" (C++/CLI).
Параметр /clr:safe компилятора устарел в Visual Studio 2015 и не поддерживается в Visual Studio 2017.
Это предупреждение выдается в качестве ошибки, и его можно отключить с помощью директивы pragma warning или параметра компилятора /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
}