Section 9.1: nameof 기본 사용법: 변수 이름 출력하기

nameof 연산자를 이용하면 사용자는 특정 변수나 타입, 혹은 멤버의 이름을 리터럴 형식으로 하드코딩하지 않고도 손쉽게 얻어올 수 있게 된다. 이 작업은 컴파일 시점에 수행되므로, IDE 의 이름 변경하기 기능을 활용하여 참조되는 식별자와 그에 해당하는 이름 문자열 모두를 변경할 수 있게 될 것이다.

var myString = "String Contents"; Console.WriteLine(nameof(myString));

위 코드는 아래와 같은 결과를 출력할 것이다.

myString

이는 해당 변수의 이름이 "myString" 이기 때문이며, 해당 변수 이름을 변경하는 리팩토링 수행 시 출력되는 변수 이름 역시 함께 변경될 것이다.

만약 nameof 연산자가 reference 타입에 대해서 호출이 되었다면, reference 대상 객체의 이름이나 타입이 아닌 현재 reference 자체의 이름이 반환될 것이다.

아래 예제를 확인하라:

string greeting = "Hello!"; Object mailMessageBody = greeting; Console.WriteLine(nameof(greeting)); // "greeting" 을 반환한다 Console.WriteLine(nameof(mailMessageBody)); // "greeting" 이 아닌 "mailMessageBody" 를 반환함에 유의하라
본 문서는 C# Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

[출처] https://books.goalkicker.com/CSharpBook/

반응형

+ Recent posts