키워드

키워드는 C# 언어 문법을 정의하는 문자 토큰입니다.

키워드란 C#에 내장된 전용 단어들을 말하는데, 이 단어들은 고유한 기능을 가지고 있기 때문에 코드를 작성할 때 변수명, 함수명 등 다른 식별자로 사용할 수 없습니다. 그냥 쓰면 문법적 모호함이 생겨 컴파일 오류가 발생하기 때문입니다. 예를 들어 int는 정수 자료형을 뜻하는 단어인데 bool int = 12;처럼 변수 이름으로 쓰면 컴파일러가 코드를 해석하지 못합니다. int가 특수 기능에 할당된 예약어이기 때문이에요.

키워드에는 핵심 규칙 두 가지가 있습니다

키워드는 변수명이나 다른 식별자로 직접 사용할 수 없으며, 키워드 앞에 @ 기호를 붙이는 경우만 예외입니다. 모든 C# 표준 키워드는 전부 소문자로 작성하고 .NET 내장 자료형 이름은 파스칼 케이스(PascalCase) 규칙을 따릅니다.

abstractconstexternintoverridesizeoftypeof
ascontinuefalseinterfaceparamsstackallocuint
basedecimalfinallyinternalprivatestaticulong
booldefaultfixedisprotectedstringunchecked
breakdelegatefloatlockpublicstructunsafe
bytedoforlongreadonlyswitchushort
casedoubleforeachnamespacerefthisusing
catchelsegotonewreturnthrowvirtual
charenumifnullsbytetruevoid
checkedeventimplicitobjectsealedtryvolatile
classexplicitinoperatorwhenwhile

전역 예약어로 어떤 상황에서도 직접 이름으로 쓸 수 없고 반드시 @ 접두사를 붙여야 합니다

int @int; // 문법상 유효한 코드
int int;  // 컴파일 오류 발생Code language: JavaScript (javascript)

문맥 키워드

문맥 키워드 (Contextual Keywords)

문맥 키워드는 특정 문법 구조 안에서만 키워드로 인식됩니다. 일반 키워드와 달리 코드의 다른 부분에서는 그냥 식별자로 사용할 수 있습니다.

addascendingasyncawaitbydescendingdynamic
equalsfromgetglobalgroupininto
joinletonorderbypartialremoveselect
setvaluevarwhereyield

오직 특정 문법 내에서만 예약어로 작동하며 그 외 곳에서는 변수명으로 직접 사용 가능

int var; // 허용됨, 형식 추론 구문 밖에서는 var가 키워드로 취급되지 않음
var num = 10; // 여기서 var는 키워드로 쓰여 암시적 형식 추론에 사용Code language: JavaScript (javascript)

앞 예시에서 동그라미로 표시한 단어들은 모두 키워드에 해당합니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다