//MARK: - 1. 일반적인 함수
func greetingMessage(person: String,
day: String) -> String {
return "Hello \(person), today is \(day)."
}
함수를 선언하는 가장 기본적인 형태입니다.
매개변수로 person과 day를 받고, 해당 매개변수의 타입은 "String" 입니다.
그리고 -> 뒤에 있는 것이 return 값의 타입으로 "String" 입니다.
함수 호출은 다음과 같이 합니다.
// 함수 호출
greetingMessage(person: "Uno", day: "Monday")
//MARK: - 2. 매개변수를 입력받을 때, 생략한 함수
func todayMenu(_ person: String,
_ special: String) -> String {
return "\(person)!, today's lunch special is \(special)."
}
todayMenu("Uno", "gogi")
매개변수 앞에 _
만 붙여주면 됩니다.
그러면 호출할 때, 매개변수를 생략하고 호출할 수 있습니다.
//MARK: - 3. 인자이름과 매개변수이름을 변경한 함수
// Parameter : 매개변수 ex) person, hometown
// Argument : 인자 ex) visitor, from
func greetInSeoul(visitor person: String,
from hometown: String) -> String {
return "안녕하세요 \(person), \(hometown)에서 서울로 오신걸 환영합니다/"
}
greetInSeoul(visitor: "Uno", from: "속초")
매개변수 앞에 다른 이름이 붙어있죠?
그 이름은 함수를 호출할 때, 보여주게 됩니다.
//MARK: - 파라미터에 Default을 할당한 함수
func defaultValueFunc(parameterWithouDefault: Int,
parameterWithDefault: Int = 99) { }
// Default 값을 그대로 사용한 경우
defaultValueFunc(parameterWithouDefault: 1)
// Default 값을 변경한 경우
defaultValueFunc(parameterWithouDefault: 1,
parameterWithDefault: 0)
파라미터 뒤에 =99
가 붙어있죠.
해당 값이 Default Value가 됩니다.