컴파일러 오류 C2441
'variable': __declspec(process)로 선언된 기호는 /clr:pure 모드에서 const여야 합니다.
설명
/clr:pure 및 /clr:safe 컴파일러 옵션은 Visual Studio 2015에서 더 이상 사용되지 않으며 Visual Studio 2017에서는 지원되지 않습니다.
기본적으로 변수는 /clr:pure 아래의 애플리케이션 도메인당입니다. /clr:pure로 표시된 __declspec(process)
변수는 한 애플리케이션 도메인에서 수정되고 다른 애플리케이션 도메인에서 읽는 경우 오류가 발생하기 쉽습니다.
따라서 컴파일러는 프로세스당 변수 const
를 /clr:pure 아래에 적용하여 모든 애플리케이션 도메인에서만 읽도록 합니다.
자세한 내용은 프로세스 및 /clr(공용 언어 런타임 컴파일)을 참조하세요.
예시
다음 샘플에서는 C2441을 생성합니다.
// C2441.cpp
// compile with: /clr:pure /c
__declspec(process) int i; // C2441
__declspec(process) const int j = 0; // OK