조앤의 기술블로그
Functions #1 (function, return type, parameter) 본문
Swift에서 함수(Function), 파라미터, Argument Label에 대해 포스팅해보겠습니다.
<Functions>
함수는 특정 기능을 수행하는 코드 조각입니다.
함수를 사용하는 것의 장점은 'Reusability'입니다. 코드에서 불필요한 반복이 줄어듭니다.
[Calling Functions]
//functionName(parameters)
print("Hello")
[Defining Functions]
/*
func name(parameters) -> ReturnType {
statements
}
*/
func sayHello() {
print("Hello World!")
}
sayHello()
<Return Values>
func add() -> Int {
return 1 + 2
}
add()
함수가 리턴한 것은 함수를 호출한 곳으로 갑니다.
[return 키워드]
함수의 실행을 중지하고, 표현식 평가 후 그 결과를 리턴합니다.
<Parameters>
// formal parameter
func add(a: Int, b: Int) -> Int {
//a = 12 //error
return a + b
}
파라미터는 함수 body에서 사용할 수 있는 임시 '상수'입니다.
따라서 body 내부에서 값을 변경할 수 없습니다.
[Calling Functions]
// functionName(paramName: expr)
add(a: 12, b: 34)
12, 34를 actual parameter, argument 또는 인자 라고 부릅니다.
인자가 formal parameter로 복사되어서 사용됩니다.
[Default Value]
func sayHello(to: String = "Stranger") {
print("Hello, \(to)")
}
sayHello(to: "Swift")
sayHello() // Stranger
기본값을 지정해주는 방법입니다.
파라미터에 아무런 값도 전달하지 않았을 때 default value인 stranger가 출력됩니다.
[Scope, Life Cycle]
파라미터의 범위와 생성, 삭제의 Lift Cycle은 함수 바디로 제한됩니다.
Argument Label, Variadic Parameters, In-Out Parameters, Function Notation 에 관한 내용은 다음 포스팅에서 하겠습니다.
감사합니다.
참고 : KxCoding.com
'Study > Swift' 카테고리의 다른 글
Tuples (튜플) (0) | 2020.02.18 |
---|---|
[Swift] Functions #2 (0) | 2020.02.18 |
[Swift] guard Statement (guard문) (0) | 2020.02.16 |
[Swift] Structures and Classes (구조체와 클래스) (0) | 2020.02.16 |
[Swift] 클로저 (Closure) (0) | 2020.02.16 |