안녕하세요

프로그램 과정에서 막혔던 문제들에 대한 해결책 정리


페이지 목록

2024년 12월 25일 수요일

[C#][Copilot] #define NUM 3 을 C#(Unity)에서는 어떻게 표현하는가? (const vs readonly)

 #define NUM 3 으로 상수를 표현하는 방법을 C#에서는 권장하지 않고 const 나 static readonly를 사용한다고 한다.

 const는 상수 값을 설정하는 것이고 static readonly는 runtime에 세팅을 하게 된다.

 두 방법의 차이점이다.

const: 컴파일 시점에 값이 결정되고, 변경될 일이 없는 상수에 사용합니다. 값은 불변하고, 성능이 뛰어납니다.

static readonly: 런타임 시점에 초기화되며, 이후 값이 변경되지 않는 상수에 사용합니다. 객체 초기화 시점에 값을 설정할 수 있습니다.


 이해하기로는 상수로 처음부터 사용하는 경우는 const를 사용하고,

runtime에 들어가서 최초로 한 번만 값을 세팅하는 경우에는 static readonly를 사용하게 된다.

 즉, 런타임에 초기화 시키려면 static readonly 를 쓰고 아예 처음부터 상수로 쓰려면 const를 사용하면 된다.


** 본 문은 Microsoft Copilot의 도움을 받아 제작되었습니다.

댓글 없음:

댓글 쓰기