2015-09-22 110 views
1

我只想在數組元素的類型爲特定類型時擴展數組類型。在這種情況下,我正在使用EKCalendar的實例。僅在元素類型爲特定類型時擴展數組

這不起作用:

public extension Array where Generator.Element : EKCalendar{ 

} 

但這:

public extension CollectionType where Generator.Element : EKCalendar{ 

} 

爲什麼我只能用一個協議做到這一點?

回答

3

同時延長Array你不能訪問Generator.Element因爲它是CollectionType協議的一部分,你需要使用Element

public extension Array where Element: EKCalendar { 
    //.... 
}