지역 선언

함수나 프로시저의 바디 부분은 루틴의 문장 블럭에서 사용할 지역 변수들의 선언으로 시작
하는 경우가 많습니다. 이런 선언에는 상수, 타입 및 기타 루틴도 포함합니다. 로컬 식별자
의 유효 범위는 그 식별자가 선언된 루틴으로 제한됩니다.


■ 중첩된 루틴

함수 및 프로시저는 블럭의 지역 선언 영역에 다른 함수나 프로시저를 포함할 수 있습니다
(nested routine). 예를 들어, 다음의 DoSomething 프로시저의 선언에는 중첩된 프로시저
가 포함되어 있습니다.

1.png

중첩 루틴의 유효 범위는 루틴이 선언된 프로시저 또는 함수로 제한됩니다. 위 예제에서
NestedProc은 DoSomething 내에서만 호출될 수 있습니다.
중첩 루틴의 실제 예제를 보려면 SysUtils 유닛에 있는 DateTimeToString 프로시저,
ScanDate 함수 등을 살펴보십시오.


파라미터

대부분의 프로시저 및 함수 헤더에는 파라미터(parameter) 리스트가 있습니다. 예를 들어,

2.png

위의 헤더에서, 파라미터 리스트는 (X: Real; Y: Integer)입니다.

파라미터 리스트는 세미콜론으로 구분하고 괄호로 묶은 일련의 파라미터 선언입니다. 각 선
언에서는 콤마로 구분된 파라미터 이름과 뒤이어 대부분 콜론과 타입 식별자가 나오며, 어
떤 경우에는 = 기호와 기본값이 오기도 합니다. 파라미터 이름은 유효한 식별자여야 합니
다. 선언 앞에는 예약어 var, const, out 중 하나가 있을 수 있습니다. 예를 들면, 다음과 같
습니다.

3.png

파라미터 리스트는 루틴이 호출될 때 전달되어야 할 파라미터의 개수, 순서와 타입을 지정
합니다. 루틴에 파라미터가 없다면 선언에서 식별자 리스트와 괄호를 생략하십시오.

4.png

프로시저 또는 함수의 바디 내에서, 파라미터 이름(위 첫 번째 예제의 X와 Y)은 지역 변수
로 사용할 수 있습니다. 파라미터 이름을 프로시저나 함수 바디의 지역 선언 영역에서 다시
선언하지 마십시오.


파라미터 의미 구조

파라미터는 다음과 같은 방법으로 분류됩니다.

  - 모든 파라미터는 값, 변수, 상수, 출력 파라미터로 분류합니다. 기본은 값 파라미터며, 예약어
var, const, out은 각각 변수, 상수, 출력 파라미터를 나타냅니다.

  - 값 파라미터는 항상 타입이 지정되며, 상수, 변수, 출력 파라미터는 타입을 가질 수도 가지지
않을 수도 있습니다.

  - 배열 파라미터에는 특수한 규칙이 적용됩니다. 5장의“배열 파라미터”를 참조하십시오.

파일과 파일을 포함한 구조 타입의 인스턴스는 변수 파라미터(var)로만 전달할 수 있습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 22420
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 20943
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 23014
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 28794
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 29999
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 25348
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 46295
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 182123
143 HTML5 Builder로 시작하는 Hello World 모바일 클라이언트 앱 생성하기 (한글 번역) 관리자 2012.09.20 7003
142 [델파이 문법] 문법 요소 #1 file 관리자 2012.09.17 7685
141 [XE3] VCL 이나 FireMonkey 폼을 Metropolis UI로 컨버팅하는 1분 동영상 관리자 2012.09.12 6937
140 [델파이 문법] 프로그램과 유닛 #4 file 관리자 2012.09.12 6430
139 [델파이 문법] 프로그램과 유닛 #3 file 관리자 2012.09.10 7526
138 20120906 RAD Studio XE3 월드투어-서울 세미나 발표자료입니다. [1] file 관리자 2012.09.07 5818
137 [델파이 문법] 프로그램과 유닛 #2 file 관리자 2012.09.06 8376
136 [델파이 문법] 프로그램과 유닛 #1 file 관리자 2012.09.03 9105
135 [델파이 문법] 프로시저와 함수 #12 file 관리자 2012.08.30 5678
134 [델파이 문법] 프로시저와 함수 #11 file 관리자 2012.08.27 5373
133 [델파이 문법] 프로시저와 함수 #10 file 관리자 2012.08.23 7037
132 [델파이 문법] 프로시저와 함수 #9 file 관리자 2012.08.20 6946
131 [델파이 문법] 프로시저와 함수 #8 file 관리자 2012.08.16 5581
130 [델파이 문법] 프로시저와 함수 #7 file 관리자 2012.08.13 6190
129 [동영상 강의] 델파이 기본 교육_21.트랜잭션처리 관리자 2012.08.10 6808
» [델파이 문법] 프로시저와 함수 #6 file 관리자 2012.08.09 5550
127 PA(Platform Assistant) Server를 활용한 Windows 응용 프로그램 원격 디버깅 file 관리자 2012.08.09 5586
126 [동영상 강의] 델파이 기본 교육_20.스토어드 프로시저 관리자 2012.08.07 6354
125 [동영상 강의] 델파이 기본 교육_19.예외(Exception)처리 관리자 2012.08.06 6567
124 [델파이 문법] 프로시저와 함수 #5 file 관리자 2012.08.06 5566