Ошибка компилятора C2441
"переменная": символ, объявленный с __declspec(process), должен быть констант в /clr:pure mode
Замечания
Параметры компилятора /clr:pure и /clr:safe компилятора устарели в Visual Studio 2015 и не поддерживаются в Visual Studio 2017.
По умолчанию переменные относятся к домену приложения в разделе /clr:pure. Переменная, помеченная __declspec(process)
в разделе /clr:pure , подвержена ошибкам при изменении в одном домене приложения и чтении в другом.
Таким образом, компилятор применяет переменные процесса в const
/clr:pure, что делает их чтение только во всех доменах приложений.
Дополнительные сведения см. в разделе "Процесс" и /clr (компиляция среды CLR).
Пример
В следующем примере создается C2441.
// C2441.cpp
// compile with: /clr:pure /c
__declspec(process) int i; // C2441
__declspec(process) const int j = 0; // OK