DevCho
Developer Blog
DevCho
반응형
전체 방문자
오늘
어제
  • 분류 전체보기 (48)
    • IOS (31)
      • Xcode (7)
      • Assets (1)
      • Swift (20)
      • UI (1)
      • SwiftUI (1)
      • Build (1)
    • Flutter (4)
      • Install (4)
      • Dart (0)
    • Rust (0)
    • 유용한 사이트 소개 (1)
    • 개발자의 아이템 (1)
    • Terminal (1)
    • Mac (2)
    • Git (1)
    • 회고 (1)
    • Java (2)
      • Java 기본 사용법 (2)
      • Collections (0)
    • 개발자의 글쓰기 (0)
    • 디자인 패턴 (1)
    • JavaScript (2)
    • Kotlin (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • func
  • chocolatey 설치
  • Dark mode
  • dart 설치
  • optional
  • xcode
  • chocolatey install
  • 스위프트
  • flutter 설치
  • Storyboard
  • random number
  • SwiftUI
  • Swift
  • flutter dart
  • IOS
  • CLASS
  • nil
  • chocolatey
  • Terminal
  • flutter install
  • xcode13
  • flutter
  • dart
  • 플러터 설치
  • Java
  • MAC
  • 제어문
  • Xcode Theme
  • swift random
  • struct

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
DevCho

Developer Blog

IOS/Swift

[Swift] internal parameter name과 external parameter name

2021. 12. 25. 22:52
반응형

Swift func의 parameter

Swift func는 external parameter name과 internal parameter name이라는 신기한 기능이 있다.  이것은 외부에서 받을 파라미터 이름과 내부에서 사용할 파라미터의 이름을 구분하기 위해 만들어진 것인데 다음과 같은 구조로 되어 있다. 이루어진다.

func [func name]([external] [internal]: Int) -> Int {

}

 

예를 들어 더하기를 위한 func을 만든다고 해보자. 이때 외부에서 받을 파라미터 이름을 n1과 n2로 하고 내부에서 사용할 이름을 number1과 number2로 한다면 func이 다음과 같이 만들어질 수 있다.

func add(n1 number1: Int,n2  number2: Int) -> Int {
    return number1 + number2
}

 

위의 func add는 다음과 같이 사용될 수 있다.

add(n1: 1, n2: 2)

 

내부(internal) 외부(external) 파라미터 명 일치시키기

내부와 외부 파라미터 명을 일치시키기 위해서는 파라미터 이름 하나만 쓰면 된다. 예를 들어 위의 func add는 내외부의 파라미터명을 일치시키기 위해 다음과 같이 바뀔 수 있다.

func add(number1: Int,number2: Int) -> Int {
    return number1 + number2
}

 

위 func는 다음과 같이 사용된다.

add(number1: 1, number2: 2)

 

 

외부 파라미터 명 제거하기

하지만 매번 외부 파라미터명을 붙이는 것은 비효율적이다. func를 사용하기 위해 파라미터명을 매번 명시하는 것이 오히려 가독성이 떨어지는 경우도 많다. 이러한 경우를 위해 Swift에서는 외부 파라미터명을 제거하는 방법을 제공한다. 바로 다음과 같이 외부 파라미터명에 '_'을 사용하는 것이다.

func [func name](_ [internal]: Int) -> Int {

}

 

예를 들어 위의 더하기 func는 다음과 같이 바뀔 수 있다.

func add(_ number1: Int,_ number2: Int) -> Int {
    return number1 + number2
}

 

외부 파라미터 명이 제거되면 다음과 같이 외부 파라미터명을 사용하지 않고 함수를 사용할 수 있게 된다.

add(1,2)
반응형

'IOS > Swift' 카테고리의 다른 글

[Swift] extension 키워드 이용해 타입 기능 확장하기  (0) 2021.12.26
[Swift] Background Thread에서 Task 실행하기  (1) 2021.12.26
[Swift] JSONDecoder 사용하여 JSON 데이터 파싱하기  (0) 2021.12.25
[Swift] 함수형 프로그래밍 알아보기 : 클로저(Closures), 일급객체  (0) 2021.12.25
[Swift] protocol이란 무엇인가?  (0) 2021.12.22
    'IOS/Swift' 카테고리의 다른 글
    • [Swift] extension 키워드 이용해 타입 기능 확장하기
    • [Swift] Background Thread에서 Task 실행하기
    • [Swift] JSONDecoder 사용하여 JSON 데이터 파싱하기
    • [Swift] 함수형 프로그래밍 알아보기 : 클로저(Closures), 일급객체
    DevCho
    DevCho
    개발자의 개발 공간

    티스토리툴바