C#에서 readonly와 const는 상수형 타입으로 변수의 값이 변하지 않도록 하는 키워드입니다.
readonly는 런타임 상수이고 const는 컴파일 상수입니다.
readonly
런타임 상수로 변수 선언 시에 값을 넣거나 생성자를 통해서 값 할당이 가능합니다.
생성자가 끝난 후에는 값 변경이 불가능하며, 메서드 내부에서 변경이 불가능합니다.
모든 자료형에 사용이 가능하며 Heap 메모리에 할당됩니다.
public class Example
{
public readonly int key;
public Example(int key)
{
this.key = key; // 생성자에서 초기화 가능
}
}
const
컴파일 상수로 변수 선언과 동시에 값을 할당해줘야 합니다.
내장자료형(정수형, 실수형, Enum, String)만 사용 가능하며 Stack 메모리에 할당됩니다.
Stack 메모리에 할당되기 때문에 접근이 빠르다는 장점이 있습니다.
단, static 선언을 할 경우 Heap 메모리에 저장 가능합니다.
public class Example
{
public const int key = 250903; // 컴파일 시 값 할당, 이후 변경 불가
}'개발, IT > C#' 카테고리의 다른 글
| [유니티 / C#] 입출력 (0) | 2025.09.04 |
|---|---|
| [유니티 / C#] 비주얼 스튜디오 유용한 단축키 (0) | 2025.09.04 |
| [유니티 / C#] CLR(Common Language Runtime) 알아보기 (0) | 2025.09.03 |
| [유니티 / C#] C, C#과 C++의 차이점 (0) | 2025.09.03 |
| [유니티 / C#] DivideByZero 예외처리 (0) | 2025.09.03 |