paramètre générique ne peut pas être déduit swift
J'ai écris un Tableau d'extension pour les articles distincts
extension Array {
func distinct<T: Equatable>() -> [T]{
var unique = [T]()
for i in self{
if let item = i as? T {
if !unique.contains(item){
unique.append(item)
}
}
}
return unique
}
}
Et essayez d'appeler cette fonction comme ci-dessous
let words = ["pen", "Book", "pencile", "paper", "Pin", "Colour Pencile", "Marker"]
words.distinct()
Mais il donner d'erreur "paramètre générique de 'T' ne peut pas être déduit swift"
Jetez un oeil à stackoverflow.com/questions/24091046/... ...
OriginalL'auteur Arun Kumar P | 2016-02-09
Vous devez vous connecter pour publier un commentaire.
Vous pouvez vous débarrasser de cette erreur en indiquant au compilateur de ce qui vous attend:
Le problème est que le compilateur ne sait pas ce que le générique de T est.
Bien meilleure solution serait de dire au compilateur que vous définissez une fonction distincte de tous les tableaux où leur Élément est Equatable:
OriginalL'auteur Greg