[함수] 1. Swift 함수의 선언, 활용 및 응용

권승용·2022년 6월 8일
0

Swift 프로그래밍

목록 보기
2/7

1. 함수의 선언

func sumTwoNumbers(a: Int, b: Int) -> Int {
	let sum = a + b
    return sum
}
  • func : 함수 선언을 위한 키워드(keyword)
  • sumTwoNumbers : 함수의 이름
  • (a: Int, b: Int) : 함수의 매개변수(인자, 파라미터(parameters))
    - 함수의 정의에 입력값으로 사용되는 변수이다.(내부 사용)
  • -> Int : 함수의 반환(return) 타입 (리턴형, 리턴 타입)

2. 함수의 활용

sumTwoNumbers(a: 2, b: 3)	// 5를 반환
  • sumTwoNumbers : 함수의 식별자(identifier)
  • (a: 2, b: 3) : 함수의 인수(arguments)
    - 함수를 호출 할 때 함수가 필요한 파라미터의 타입과 일치하는 실제 값(외부 사용)

⭐️ 함수를 선언할 때는 parameter 라고 하고, 함수를 호출(call)할 때는 argument라고 한다.


3. 함수의 응용

  • Argument Label (아규먼트 레이블)

    • 아규먼트 레이블(Argument Label)은 함수를 호출할 때 사용하는 인수(argument)의 이름을 지정할 수 있는 기능이다.

      // firstNumber, secondNumber이 아규먼트 레이블(Argument Label)이다. 
      func sumTwoNumbers(firstNumber a: Int, secondNumber b: Int) -> Int {
      	let sum = a + b
         	return sum
      }
      sumTwoNumbers(firstNumber: 2, secondNumber: 3) // 5를 반환
  • Argument Label의 생략 (와일드카드 패턴)

    • 와일드카드 식별자(_)를 사용해 아규먼트 레이블을 생략할 수 있다.

      // 와일드카드 식별자 _ 을 아규먼트 레이블 대신 써서 생략의 의미를 나타내었다. 
      func sumTwoNumbers(_ a: Int, _ b: Int) -> Int {
      	let sum = a + b
        	return sum
      }
      sumTwoNumbers(2, 3) // 5를 반환

      이러한 와일드카드 패턴은 함수의 기능이 명확할 때 사용할 수 있다.

  • Variadic Parameters (가변 파라미터)

    • 가변 파라미터는 하나 이상의 파라미터로 2개 이상의 아규먼트를 전달할 수 있게 한다.

    • 가변 파라미터는 개별함수마다 하나씩만 선언할 수 있고, 기본값을 가질 수 있다.

      // 아규먼트는 배열 형태로 전달된다.
      // 아래 예시에서는 [1, 5, 10]
      func sumManyNumbers(_ numbers: Int...) -> Int {
      	var total = 0
        
        	for n in numbers {
        		total += n
        	}
        	return total
      }
      sumManyNumbers(1, 5, 10) // 16을 반환
  • 파라미터에 기본값 정하기

    • 파라미터에 기본값을 정해 전달된 아규먼트가 없을 경우의 기본값을 지정할 수 있다.

      // a: Int = 2 : a의 아규먼트가 없을 경우 기본값 2로 지정
      func sumTwoNumbers(a: Int  = 2, b: Int = 3) -> Int {
      	let sum = a + b
      	return sum
      }
      sumTwoNumbers() // 5를 반환
profile
ios 개발자 지망생 입니다!

0개의 댓글