Record scope — 레코드 필드의 유효 범위
Record scope — 레코드 필드의 유효 범위
레코드를 선언하고 나면 그 안의 필드 이름을 어디까지 쓸 수 있는지가 궁금할 때가 있어요. 레코드 필드 식별자가 유효한 위치를 정리해 드릴게요.
본문
레코드 정의 안의 필드 식별자는 다음 세 곳에서 유효해요:
- 레코드 정의가 끝날 때까지 — 즉 레코드 타입을 선언하는 동안에는 그 필드 이름을 쓸 수 있어요.
- 해당 레코드 타입을 가진 **변수의 필드 지정자(field designator)**에서 —
recordVar.fieldName처럼 쓸 때죠. - 해당 레코드 타입의 변수를 다루는
With문장 안의 식별자에서 —with r do ...처럼 쓰면 필드 이름을 그대로 참조할 수 있어요.
레코드 필드는 기본적으로 이 세 영역에서만 의미를 가지니, 그 밖의 곳에서 필드 이름을 쓰면 식별자를 못 찾는 오류가 나요.
더 알아보기
- Block scope — 블록 안에서의 변수 유효 범위
- Class scope — 클래스 컴포넌트 식별자의 유효 범위
- Unit scope — 유닛 인터페이스 식별자의 유효 범위