Ich habe Probleme mit einem der Swift3-Änderungen. Früher haben sie ...
und ..<
als Range
behandelt, aber jetzt haben sie eine Tonne neuer "Unterbereiche". Ich möchte eine Funktion haben, die beide Bereichsvarianten nimmt.Range in Swift3
struct Test {
var data = [1,2,3,4,5]
subscript(r:Range<Int>) -> [Int] {
return Array(data[r])
}
}
let t = Test()
print(t[0...1]) // fails because now this is a ClosedRange
print(t[0..<2])
Ich möchte ein Baby haben
subscript(r:TakesAnyRange<Int>) -> [Int] {
Dies könnte das sein, wonach Sie suchen: http://stackoverflow.com/a/40377303/1187415. –
@MartinR Genau :-) Ich mag es, wenn Compiler-Designer ein einfaches Konstrukt durch eines ersetzen, das mindestens einen Doktortitel braucht>: - | –
@MartinR Nun, da dies eine vereinfachte Frage ist, habe ich festgestellt, dass Ihre Lösung für einen "tiefgestellten" Text nicht funktioniert. Hast du einen anderen Zeiger? –