Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
'bewerking': rekenkundige aanwijzer is niet verifieerbaar
Opmerkingen
Met behulp van aanwijzerberekeningen wordt een niet-verifieerbare afbeelding geproduceerd.
Zie Pure en Verifiable Code (C++/CLI) voor meer informatie.
De optie /clr:safe compiler is afgeschaft in Visual Studio 2015 en wordt niet ondersteund in Visual Studio 2017.
Deze waarschuwing wordt weergegeven als een fout en kan worden uitgeschakeld met de waarschuwings pragma of de optie /wd compiler.
Voorbeelden
In het volgende voorbeeld wordt C4958 gegenereerd:
// C4958.cpp
// compile with: /clr:safe
// #pragma warning( disable : 4958 )
using namespace System;
int main( ) {
Int32 arr[] = new Int32[10];
Int32* p = &arr[0];
p++; // C4958
}
De compiler implementeert matrixbewerkingen met pointer-rekenkundige bewerkingen. Daarom zijn systeemeigen matrices niet verifieerbaar; gebruik in plaats daarvan een CLR-matrix. Zie matrix voor meer informatie.
In het volgende voorbeeld wordt C4958 gegenereerd:
// C4958b.cpp
// compile with: /clr:safe
// #pragma warning( disable : 4958 )
int main() {
int array[5];
array[4] = 0; // C4958
}