In Swift sind structs Wertetypen: Zuweisen kopiert. classes sind Referenztypen mit Vererbung. Die meisten Datentypen schreibt man als struct. Methoden, die ein struct verändern, brauchen mutating. enums können zu jedem Fall zugehörige Werte tragen.
Eigenschaften können berechnet sein (var flaeche: Double { ... }).
struct Konto {
let inhaber: String
private(set) var stand = 0.0
mutating func einzahlen(_ betrag: Double) {
if betrag > 0 { stand += betrag }
}
}
var k = Konto(inhaber: "Mia")
k.einzahlen(50)
print(k.stand)
enum Ergebnis {
case erfolg(Int)
case fehler(String)
}
let e = Ergebnis.erfolg(42)
switch e {
case .erfolg(let z): print("Wert \(z)")
case .fehler(let m): print(m)
}Merke
struct= Wertetyp,class= Referenztypmutatingfür verändernde MethodenEnums mit zugehörigen Werten
Aufgabe
Lege ein `struct Punkt` mit einer Methode `abstand()` an.