클로저 내에서 (_)에 대해서

1 답변 글타래를 보이고 있습니다
  • 글쓴이
    • mi kim
      참가자
      • 글작성 : 10
      • 답글작성 : 8

      안녕하세요.

      경고창 문구 예제 중에서  그림과 같은 코드를 보게 되었습니다.

      질문1 .

      ‘ _ ‘ 값을 받되 쓰진 않겠다는 의미로 이해하고 있습니다.

      위 클로저에서 (_) 의 _ 와, 밑줄에 있는 _ 는 서로 다른건가요?

      같은 범위 내에 있으니까 _ 라고 두면 같은게 아닐까 궁금합니다.

       

      • 이 게시글은 mi kim에 의해 3 years, 5 months 전에 수정됐습니다.
      • 이 게시글은 mi kim에 의해 3 years, 5 months 전에 수정됐습니다.
      • 이 게시글은 mi kim에 의해 3 years, 5 months 전에 수정됐습니다.
      • 이 게시글은 mi kim에 의해 3 years, 5 months 전에 수정됐습니다.
      • 이 게시글은 mi kim에 의해 3 years, 5 months 전에 수정됐습니다.
    • 야곰
      키 마스터
      • 글작성 : 37
      • 답글작성 : 580

      클로저 내부의 _popViewController(animated:) 메서드의 반환값을 사용하지 않겠다는 뜻의 와일드카드이고, 클로저 시작 부분의 (_)_도 와일드 카드이지만, 클로저의 매개변수를 사용하지 않겠다는 뜻으로 사용한거예요.

      UIAlertAction.inithandler 매개변수로 전달할 수 있는 클로저는 UIAlertAction 매개변수를 갖기 때문입니다. 그 매개변수를 클로저 내부에서 딱히 쓰지 않을거니 무시하겠다는 뜻으로 해석합니다.

      만약 클로저 내부에서 전달받은 액션 인스턴스를 사용할 필요가 있다면 (_) 대신에 (action: UIAlertAction) 등으로 매개변수를 표시해주고 사용하면 됩니다.

      • 이 답변은 야곰에 의해 3 years, 5 months 전에 수정됐습니다.
      • 이 답변은 야곰에 의해 3 years, 5 months 전에 수정됐습니다.
1 답변 글타래를 보이고 있습니다
  • 답변은 로그인 후 가능합니다.

logo landscape small

사업자번호 : 743-81-02195
통신판매업 신고번호 : 제 2022-충북청주-1278 호
고객센터 : 카카오톡채널 @yagom