Download presentation
Presentation is loading. Please wait.
1
9장 부프로그램 순천향대학교 컴퓨터공학부 하 상 호
2
목차 부프로그램 개념 매개변수 부프로그램 설계시 고려사항 매개변수 전달 방법 중복 부프로그램 포괄형 부프로그램
3
부프로그램 개념 추상화 도구 두 가지의 기본적인 추상화 도구 데이터 추상화 프로세스 추상화 사용자가 새로운 데이터
타입을 정의하는 것을 허용하는 수단 프로세스 추상화 문장들의 집합을 부프로그램으로 추상화시키는 수단
4
부프로그램 개념 부프로그램 사용 이점은? 작성력 향상 프로그램 모듈화 용이 개별 컴파일 가능
5
부프로그램 특성 각 부프로그램은 단일의 진입점을 갖는다. 호출 프로그램 단위는 피호출 부프로그램의 실행 중에 중단된다.
부프로그램의 실행이 끝났을 때 제어는 항상 호출 프로그램에게 돌아간다.
6
부프로그램 기본 정의 용도는 정적 타입 검사 C에서, 프로토타입(prototype)이라 불리며 보통 헤더 파일에 위치
7
부프로그램 개념 예제: 다음 부프로그램에서 기본 정의를 식별하라. 부프로그램정의 부프로그램 호출 부프로그램머리부
매개변수프로파일 프로토콜 형식매개변수 실매개변수 부프로그램선언 int main() { int dis(int, int); ... dist1 = dist(x1, y1); .... } int dist(int a, int b) { int d; d = a - b; if (d <0) d = -d; return d; }
8
매개변수 부프로그램이 처리하는 데이터 매개변수 => 매개변수화된 계산 지역 변수 비 지역변수 => 부작용 초래, 신뢰성 감소 부프로그램 호출시, 형식 매개변수는 실 매개변수에 바인딩되는데 이를 매개변수 대응(parameter correspondence)이라 한다. 매개변수 대응의 2가지 방법 위치 기반 키워드 기반
9
매개변수 대응 위치 매개변수(positional parameter)는 매개변수 대응이 단순한 위치에 기반하여 이루어짐
매개변수가 나열된 위치 순서에 기반하여 대응 첫번째 형식 매개변수는 첫번째 실 매개변수에 대응되고, 두번째 형식 매개변수는 두번째 실 매개변수에 대응된다. 안전하고 효과적인 방법
10
매개변수 대응 키워드 매개변수(keyword parameter)는 실 매개변수에 바인딩되는 형식 매개변수의 이름이 실 매개변수와 함께 지정 실 매개변수의 순서는 임의적이나 형식 매개변수 이름 숙지 필요 예제: in Ada, 위치, 키워드 매개변수 혼합 가능 키워드 매개변수가 나타난 이후에는 모두 키워드 매개변수여야 함 In Python, Sumer(length, sum = My_Sum, list = My_Array)
11
디폴트 매개변수 디폴트 값(default value)을 갖는 형식 매개변수 예제 언어: C++, Python, PHP, Ada
12
디폴트 매개변수 C++에서 디폴트 매개변수는 매개변수 리스트의 마지막에 위치 키워드 매개변수를 지원하지 않음
13
가변개수 매개변수 가변 개수의 매개변수를 허용한다. 예제: C# 매개변수가 동일 타입이면 임의 개수의 전달 가능
14
부프로그램 유형
Similar presentations