C# 상수 키워드 const vs readonly
왜 두 키워드가 비교될까? const 키워드와 readonly 키워드는 비슷한 기능을 하기 때문에 많이 비교되곤 한다. 두 키워드 모두 최초 값을 정한 뒤에는 값을 변경할 수 없게 만드는 기능을 가지고 있다. public const int myConst = 1000; public readonly int myRead = 2000; 그렇다면 다른점은 무엇일까? 조금 더 자세히 말하자면, const는 컴파일타임 상수를 정의한다. readonly는 런타임 상수를 정의한다. 컴파일타임 상수 const는 컴파일 타임에 변수가 값으로 대체된다. 그래서 반드시 변수의 선언과 동시에 값을 할당하며, 변경할 수 없다. 컴파일 시점에서 결정된 값이 변할 수 없음으로 모든 클래스의 인스턴스가 동일한 값을 가진다. 사용자 정의..