2016-08-29 4 views
2

은 무엇 ... 구문은 함수에서 의미 하는가하는 것은 저는 최근과 지금까지 내가 UIViews의 그것의 단지 배열을 이해 몇 가지 튜토리얼에서 이것을보고 예Swift - 함수 매개 변수의 의미는 무엇입니까?

func setupViews(views: UIView...) { 
    ... 
} 

를 들어

매개 변수.

그래서

func setupViews(views: [UIView]) { 
    ... 
} 

이나 차이가를 작성하는 것과 동일?

+2

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Functions.html을 열고 "variadic parameters"로 스크롤하십시오. – Moritz

답변

3

IT는 docs로하는 가변 인자 Paramater를 나타냄

가변 인수 매개 변수는 특정 유형의 0 개 이상의 값을 수용한다. 가변 매개 변수를 사용하여 함수가 호출 될 때 이 다양한 수의 입력 값을 전달할 수 있음을 지정합니다. 매개 변수의 형식 이름 뒤에 세 개의 마침표 (...) 을 삽입하여 가변 매개 변수를 작성합니다.

variadic 매개 변수에 전달 된 값은 내에서 해당 유형의 배열로 사용할 수 있습니다. 예를 들어 숫자의 이름과 유형이 Double... 인 가변 매개 변수가 [Double] 유형의 숫자라고하는 상수 배열 의 배열로 함수 본문에서 사용 가능하게됩니다.

func arithmeticMean(numbers: Double...) -> Double { 
    var total: Double = 0 
    for number in numbers { 
     total += number 
    } 
    return total/Double(numbers.count) 
} 
arithmeticMean(1, 2, 3, 4, 5) 
// returns 3.0, which is the arithmetic mean of these five numbers 
arithmeticMean(3, 8.25, 18.75) 
// returns 10.0, which is the arithmetic mean of these three numbers 

가에만 기능 하나씩 가변 인자 파람을 가질 수

아래의 예는 임의의 길이의 번호 목록 (도 평균라고도 함) 산술 평균을 계산한다. 가변 인자 매개 변수의 함수를 사용하면 어레이로서 개체/값을 전달할 필요가없는 경우

하면 알 수 있듯이, 입력 [Double]의 paramater 및 Double...

간의 미묘한 차이가있다.

생각을위한 음식; 이 방법을 어떻게 부릅니까? 그래서 같이 func arithmeticMean(numbers: [Double]...) -> Double

:이 예에서

arithmeticMean([1, 2, 3, 4, 5], [5, 4, 3, 2, 1]) // you could keep adding more and more arrays here if desired. 

'숫자'이중 배열의 배열이 될 것입니다.

+1

고맙습니다. 문서에서이 부분을 빠뜨린 것이 틀림 없습니다. 내가보기에는 너무 무언가가 아니기 때문에 나는 그것이 무엇인지 궁금해했다. – crashoverride777

+0

@ crashoverride777, 내 기쁨. – Woodstock

+1

답변을 편집 해 주셔서 감사합니다. 마지막 몇 문장으로 올바르게 이해할 수있었습니다. 나는 몇 분 후에 그것을 표시 할 것이다. – crashoverride777

관련 문제