1. 매개변수
- 스위프트에서는 매개변수를 용도에 따라 외부 매개변수와 내부 매개변수인 두 가지로 분리한다.
- 외부 매개변수 : 함수 호출 시 인자값에 대해 레이블 역할을 한다.
- 내부 매개변수 : 입력된 인자값을 함수 내부에서 참조한다.
func 함수명(<외부 매개변수명><내부 매개변수명>: <타입>, <외부 매개변수명><내부 매개변수명>: <타입>..) {
}
func printHello(to name: String, welcomeMessage msg: String) {
print("\(name)님, \(msg)")
}
printHello(to: "홍길동", welcomeMessage: "안녕하세요")
2. 가변인자
- 가변적인 개수의 인자값을 입력 받아야 할 때는
...연산자를 추가하면 된다.
func avg(score: Int...) -> Double {
var total = 0;
for r in score {
total += r;
}
return (Double(total) / Double(score.count));
}
print(avg(score: 10,20,30,40));
3. 변수의 생존 범위와 생명주기
- 변수는 정의된 위치에 따라 사용할 수 있고 생존할 수 있는 일정 영역을 부여 받는다.
- 영역을 기준으로 보면 '전역변수'와 '지역변수'로 나눌 수 있다.