특정 작업을 수행하는 코드 모음 형태
특정이름으로 함수를 호출 할때 사용
파라미터 이름이 없는 단순 C-style
함수에서 각 파라미터에 대한 이름과 인자가 있는 Objective-C style
함수 호출을 단순화하기 위해 파라미터에 기본값을 설정가능
함수 실행을 완료하면 전달된 변수를 수정하는 in-out 파라미터로 전달될 수 있음
모든 함수에는 파라미터 타입과 반환 타입으로 구성된 타입이 있음
함수를 파라미터로 다른 함수에 전달하고 함수에서 함수를 반환하기 쉬움.
함수는 중첩된 함수 범위내에서 유용한 기능을 캡슐화하기 위해 다른 함수 내에서 작성될 수 있음(Nested Type)
목차
func greet(person: String) -> String {
let greeting = "Hello, " + person + "!"
return greeting
}
print(greet(person: "Anna"))
// Prints "Hello, Anna!"
print(greet(person: "Brian"))
// Prints "Hello, Brian!"
print(_:separator:terminator:)
로 래핑할 수 있음
func greetAgain(person: String) -> String {
return "Hello again, " + person + "!"
}
print(greetAgain(person: "Anna"))
// Prints "Hello again, Anna!"