요소가 equatable 프로토콜을 준수하는 배열로 제한된 Swift의 Array 유형에 확장을 추가하려고합니다. 나는 다음과 같은 방법으로 함수를 정의하려고 시도하고있다 :동등한 요소가있는 배열의 Swift Extension이 색인을 호출 할 수 없음 (Of of :)
이import Foundation
extension Array where Iterator.Element: Equatable {
func deletedIndicies<T: Equatable>(newArray: [T]) -> [Int] {
var indicies = [Int]()
for element in self {
if newArray.index(of: element) == nil {
indicies.append(self.index(of: element)!)
}
}
return indicies
}
}
}
기능의 목적은 newArray
에 표시되지 않습니다 원래 배열에서 모든 항목의 인덱스를 반환하는 것입니다.
내가 엑스 코드에 나타나는 오류입니다 : '(: 요소의)'나는 요소 equatable하고 필요로하고 단지 배열에 대한 함수를 정의하고 있기 때문에
유형의 인수 목록 '인덱스'를 호출 할 수 없습니다 newArray
의 요소가 동등한 지, 인덱스 메서드를 호출 할 수없는 이유가 확실하지 않습니다.