콘텐츠로 건너뛰기
Home » init(arrayLiteral:)

init(arrayLiteral:)

배열리터럴로 만들 수 있는 클래스 정의하기

ExpressibleByArrayLiteral Set 인스턴스를 만들 때, Array와 같이 [1, 2, 3] 와 같은 식으로 배열 리터럴을 이용해서 초기화하는 것이 가능하다. 이렇게 배열 리터럴을 이용해서 초기화할 수 있는 것은 ExpressibleByArrayLiteral이라는 프로토콜을 따를 때 가능해지는 것으로, 커스텀 집합 혹은 컨테이너 타입을 만들 때, 이 프로토콜을 준수하면 배열리터럴로 해당 타입을 생성하는 것이 가능해진다. 이 프로토콜은 init(arrayLiteral:) 구현해주면 된다. 일전에 예제로 만들어 본 바 있는 Stack의 경우에도 이를 적용할 수 있다. 이 이니셜라이저는 실제로 [T] 타입의 배열로 된 인자를 받아서 각 원소들을 사용해서 스스로를 구성하게 되면… 더 보기 »배열리터럴로 만들 수 있는 클래스 정의하기