1. 매개변수 기본값
func funcName(arg1: Type, arg2: Type = "지정값) -> ReturnType {
return "반환값"
}
funcName("1")
funcName("1", "2")
2. 전달인자 레이블
- 함수 호출시 함수 사용자 입장에서 매개변수 역할을 좀 더 멱확하게 표현하고자 할 때 사용
func funcName(arg1LabelName arg1: Type, arg2LabelName arg2: Type) {
return "Hello \(arg1)! I'm \(arg2)"
}
funcName(arg1LabelName: "Jimin", arg2LabelName: "ff")
3. 가변 매개변수
- 전달 받을 값의 개수를 알기 어려울 때 사용
- 함수당 하나의 가변 매개변수만 가질 수 있음(swift 5.4 미만)
func funcName(arg1: Type, arg2: Type...) -> Type {
return "ss"
}
func sayHelloFriends(me: String, friends: String...) -> String {
return "Hello \(friends)! I'm \(me)!"
}
print(sayHelloFriends(me: "ss", friends: "hana", "eric"))
4. 데이터 타입으로서의 함수
var funcName: (Arg1Type, Arg2Type) -> ReturnType = someFunction(arg1, arg2)