728x90
반응형
Swift에서의 함수는 Kotlin과 Java를 섞어놓은 듯한 모습이라고 생각한다.
파라미터를 나열할 때, 이름 : 자료형 방식으로 작성하는 부분이 있기도 하고, 리턴이 없는 함수는 Void라는 키워드가 들어가기도 한다.
파라미터가 없는 함수는 JavaScript 분위기가 나기도 한다.
1. 함수 선언의 기본 형태
func 함수이름 (파라미터 이름: 파라미터 타입) -> 리턴타입 {
//함수 구현
return 리턴 값
}
2. 반환 값이 없는 함수
func 함수이름(파라미터 이름: 파라미터 타입) -> Void {
//함수 구현
return //아예 생략이 가능하다
}
func 함수이름(파라미터 이름: 파라미터 타입) {
//함수 구현
}
//Void도 생략이 가능하다
3. 매개변수가 없는 함수
func 함수 이름() -> 리턴타입 {
//함수 구현
return 리턴값
}
//함수 이름뒤의 ()안에 Void조차 작성하지 않아도 된다
//... XCode에서 작성해보니 Void를 ()안에 작성하게 되면
//Unnamed parameters must be written with the empty name '_'라는 컴파일 에러가 발생한다.
//이 에러를 수정하면 아래처럼 작성할 수 있겠다
func 함수 이름(_: Void) -> Void {
//함수 구현
return 리턴값
}
4. 파라미터와 리턴 값이 없는 경우
func 함수 이름() -> Void {
//함수 구현
return
}
//함수 구현이 짧은 경우 가독성을 해치지 않는 범위에서 줄바꿈없이 한 줄에 표현해도 괜찮다고 한다
func hello() -> Void { print("hello") }
//리턴 값이 없는 경우, 리턴 타입(Void)을 생략해 줄 수 있습니다
func 함수이름() {
//함수 구현
return
}
//return까지 생략하면..
func bye() { print("bye") }
5. 함수의 호출
함수 이름(파라미터 이름: 값)
함수 이름()
728x90
반응형
'Language > Swift' 카테고리의 다른 글
Swift - 조건문(if-else, switch) (2) | 2022.09.20 |
---|---|
Swift - 함수 고급 (0) | 2022.09.17 |
Swift - 컬렉션 타입(Collection Type) - Array, Dictionary, Set (0) | 2022.09.15 |
Swift - Any, AnyObject, nil (0) | 2022.09.14 |
Swift - 기본 데이터 타입 (0) | 2022.09.13 |