Post

Swift - 함수(Function)란? (1)

Swift - 함수(Function)란? (1)

함수의 내용이 방대하기 때문에, 글을 여러 개로 나눠서 작성함.

함수(Function)란?

  • 반복해서 사용되는 코드를 분리하여 독립적인 실행 단위로 표현한 것을 의미함.
    • 함수를 통해 코드의 가독성과 재사용성을 높일 수 있음.
    • 함수의 반환값은 반드시 1개여야함.

함수 선언 형식

1
2
3
4
func 함수명(매개변수명: 데이터타입) -> 반환타입{
  실행 코드
  return 반환값
}

예시

1
2
3
4
5
func add(a: Int, b: Int) -> Int{
    return a + b
}

print(add(a: 10, b: 20))

결과

1
30

함수의 반환 값은 1개만 가능하기 때문에, 여러 개의 데이터를 반환해야할 경우 구조체, 클래스, 딕셔너리, 배열, 집합 등을 사용해서 처리해야함.

하지만, 튜플을 사용해서도 처리가 가능함.

예시

1
2
3
4
5
6
7
8
func test() -> (Int, String, Int){
    return (10, "Hello World!", 20)
}

var (a, b, c) = test()
print("a: \(a)")
print("b: \(b)")
print("c: \(c)")

결과

1
2
3
a: 10
b: Hello World!
c: 20

만약, 튜플을 위 예시와 같이 반환 타입 자리에 사용하는게 조금 번거롭다면, typealias를 통해 별도의 타입으로 선언해서 간략하게 사용하는 것도 가능함.

typealias 형식

1
typealias 타입명 = 데이터타입

사용 예시

1
2
3
4
5
6
7
8
9
10
typealias testType = (Int, String, Int)

func test() -> testType{
    return (10, "Hello World!", 20)
}

var (a, b, c) = test()
print("a : \(a)")
print("b : \(b)")
print("c : \(c)")

결과

1
2
3
a : 10
b : Hello World!
c : 20
This post is licensed under CC BY 4.0 by the author.