목록서브스크립트 (2)
study record
*이 글은 책 “스위프트 프로그래밍”을 읽고 작성된 글입니다. 제네릭은 스위프트의 강력한 기능 중 하나이다. 제네릭을 이용해 코드를 구현하면 어떤 타입에도 유연하게 대응할 수 있다. 또한 제네릭으로 구현한 기능과 타입은 재사용하기도 쉽고, 코드의 중복을 줄일 수 이씨에 깔끔하고 추상적인 표현이 가능하다. 제네릭을 사용하고자 할 때는 제네릭이 필요한 타입 또는 메서드의 이름 뒤의 홀화살괄호 기능( ) 사이에 제네릭을 위한 타입 매개변수를 써 제네릭을 사용할 것임을 표시한다. 제네릭 함수 func swapTwoValues(_ a: inout T, _ b: inout T) { let temporaryA: T = a a = b b = temporaryA } 제네릭함수는 실제 타입 이름을 써주는 대신에 플레이스 ..
서브스크립트는 별도의 설정자 또는 접근자 등의 메서드를 구현하지 않아도 인덱스를 통해 값을 설정하거나 가져올 수 있다. 예를 들어 someArray라는 Array 인스턴스의 인덱스를 통해 해당 인덱스의 값에 접근하고 싶다면 someArray[index]라고 표현하는 것이 서브스크립트이다. 서브스크립트를 여러 개 구현해도 외부에서 서브스크립트를 사용할 때는 서브스크립트를 사용할 때 전달한 값의 타입을 유추하여 적절한 서브스크립트를 선택하여 실행한다. 이렇게 여러 서브스크립트를 한 타입에 구현하는 것을 서브스크립트 중복 정의라고 한다. 서브스크립트는 통상 하나의 매개변수를 갖는 것이 보통이지만 타입에 따라 여러 매개변수를 가지는 경우도 있다. 매개변수의 타입과 반환 타입에는 제한이 없다. 함수와 마찬가지로 ..