Aufruf einer Klasseninstanz in einer anderen Klasse außerhalb



  • Hey Community, mein problem ist das ich ein error-Type bekomme

    Ich habe 4 klassen
    Ball Arkanoid Spielfeld und KI

    Spielfeld: hat eine Instanz von Arkanoid
    Arkanoid: hat eine Instanz von Ball und KI
    KI: beeinhaltet eine Methode bool KI::checkCollision(Arkanoid * arkanoid)

    diese benötigt Werte aus der Ball Instanz die in Arkanoid ist
    Wie komme ich an diese?

    bool KI::checkCollision(Arkanoid * arkanoid){
    arkanoid->ball->posX; ...}; (kurzform Beispiel)

    ergibt beimir ein error-type bei Arkanoid* arkanoid

    Ich hoffe das ist einigermaßen verständlich.
    Danke für eure Antworten.


  • Mod

    Wieso enthält ein Arkanoid einen Ball? Wieso braucht eine Kollisionsabfrage einen Zeiger auf einen Arkanoid? Wieso prüft eine KI Kollisionen?

    Wenn du Fehlermeldungen hast, bitte komplett zeigen.



  • Mystikk schrieb:

    Hey Community, mein problem ist das ich ein error-Type bekomme

    Das gibt es nicht. (Edit: Gut, aber nicht in diesem Kontext. Du meinst, du bekommst einen Fehler der auf fehlerhafte Verwendung der Typen zurückzuführen ist?)

    Ich hoffe das ist einigermaßen verständlich.

    Ist es leider nicht.

    Wie komme ich an diese?

    Da gibt es diverse Möglichkeiten.
    Wie wäre es damit, die einzelnen benötigten Werte direkt an die Funktion zu übergeben?
    Wie wäre es damit, eine Referenz auf den Ball an die Funktion zu übergeben?
    Wie SeppJ aber schon suggerierte, braucht die KI nicht den Arkanoid dem das Ball-Objekt gehört. Mehr noch: Die KI muss gar nicht wissen, dass es überhaupt eine Klasse Arkanoid gibt.


Anmelden zum Antworten