Kompilatorfel C2441

variabel: en symbol som deklareras med __declspec(process) måste vara konstant i läget /clr:pure

Anmärkningar

Alternativen /clr:pure och /clr:safe compiler är inaktuella i Visual Studio 2015 och stöds inte i Visual Studio 2017.

Som standard är variabler per programdomän under /clr:pure. En variabel som är markerad __declspec(process) under /clr:pure är utsatt för fel om den ändras i en programdomän och läse i en annan.

Kompilatorn tvingar därför att variabler per process är const under /clr:pure, vilket gör dem skrivskyddade i alla applikationsdomäner.

Mer information finns i process och /clr (Common Language Runtime Compilation).

Example

I följande exempel genereras C2441.

// C2441.cpp
// compile with: /clr:pure /c
__declspec(process) int i;   // C2441
__declspec(process) const int j = 0;   // OK