Objective-C에서는 프로토콜을 따르는 클래스를 메소드 매개 변수로 지정할 수 있습니다. 예를 들어 다음 UIViewController
을 준수하는 a 만 허용하는 메서드를 가질 수 있습니다 UITableViewDataSource
.
- (void)foo:(UIViewController<UITableViewDataSource> *)vc;
Swift에서이 작업을 수행하는 방법을 찾을 수 없습니다 (아마 아직 불가능할 수도 있습니다). 을 사용하여 여러 프로토콜을 지정할 수 func foo(obj: protocol<P1, P2>)
있지만 객체가 특정 클래스에 속하도록 어떻게 요구합니까?