Funktion in einer Klasse deklarieren und nutzen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Funktion in einer Klasse deklarieren und nutzen

    Über @ObservedObject gebe ich die Daten aus meinem Model an eine View weiter.

    In meiner Model Klasse möchte ich nun verschiedene Berechnungen durchführen und habe mir hierfür eine Funktion geschrieben, welche Parameter annimmt, die Berechnung ausführt und anschliesend wieder zurückgibt.

    Meine Model Klasse:

    Quellcode

    1. import Foundation
    2. class Statistik : ObservableObject {
    3. var comparisonDateString = ""
    4. var goalValue = 0
    5. var currentValue = 0
    6. func calculatesDateDifference(today: Date, comparisonDateString : String, dateComponent : Calendar.Component) -> DateComponents{
    7. let dateFormatter = DateFormatter()
    8. dateFormatter.dateFormat = "dd.MM.yyyy"
    9. let compareDate = dateFormatter.date(from: comparisonDateString)
    10. let difference = Calendar.current.dateComponents([dateComponent], from: today, to: compareDate!)
    11. return difference
    12. }
    13. let perDays = calculatesDateDifference()
    14. }
    Alles anzeigen
    Nun möchte ich allerdings gern den Members der Klasse mithilfe der Funktion die berechneten Daten übergeben.


    Als Fehlermeldung bekomme ich allerdings: Missing argument for parameter #1 in call zuürpck. Auch wird mir in der Xcode Auto Vervollständigung werden mir die Paramter nicht angezeigt.

    Erstelle ich allerdings eine Instanz der Klasse, dann funktioniert alles wie gewollt. Was mache ich falsch, habe ich irgendwo einen Denkfehler?