Ich möchte eine Funktion schreiben, die eine Zeichenfolge verwendet und anschließend den Wert der Klasseneigenschaft mit diesem Namen ausgibt. In der Praxis würde mehr als eine Eigenschaft zur Auswahl stehen. Zum Beispiel ...Verwenden eines Zeichenfolgenparameters zum Beschreiben der Klasseneigenschaft
class Apple{
var juiciness : Int = 0
init(juiciness: Int){
self.juiciness = juiciness
}
}
var myApple(juiciness : 10)
func printValue(property : String){
print(Apple.property) // <-- I want to use the string to choose a property
}
Offensichtlich kann ich diesen Code nicht tun, aber ich weiß, dass es eine bessere Lösung als nur ich Reihe von if-Anweisungen sein muss.
http://stackoverflow.com/questions/24138705/access-properties-via -subscripting-in-swift – chengsam
Wollen Sie * wirklich * einen String nehmen? Dies wäre bei einer Schließung viel besser umzusetzen. – Hamish
Für zukünftige Referenz wird diese Art von Funktionalität "Reflektion" genannt. – Alexander