[C#] readonly 키워드
Categories: C Sharp
Tags: C Sharp Programming
readonly
private readonly List<Enemy> enemies = new List<Enemy>();
- 해당 변수
enemies
가 읽기 전용이라는 의미- 한번 오브젝트가 할당된 다음에는 이 변수에는 다른 오브젝틀르 새로 덮어 쓸 수 없음
const 와의 차이
const
- 컴파일 타임의 상수
- 정수형 실수형 string 같은 내장 자료형에만 사용 가능
- 초기화를 변수 선언과 동시에 해야 한다.
readonly
- 런타임 상수
- 런타임에 초기화가 한번 이루어진 후로는 값을 수정할 수 없음.
- 런타임 때 정해질 수 있어 더 유연함.
- 위 코드에서
enemies
리스트는 동적으로 정해지기 때문에const
보단readonly
를 사용하는 것이 옳은 경우다.
- 어떤 자료형이든 상관 없이 모든 자료형에 사용 가능하다.
- 초기화가 변수 생성과 동시에 이루어져야 할 필요는 없다.
- 단, 생성자 단계에서 단 1 번 할당을 통해 초기화 할 수 있다.
- 런타임 상수
참고 블로그
🌜 개인 공부 기록용 블로그입니다. 오류나 틀린 부분이 있을 경우
언제든지 댓글 혹은 메일로 지적해주시면 감사하겠습니다! 😄
Leave a comment