Objekte abfragen und löschen



  • Hallo C++ Gemeinde,

    vorneweg, ich bin noch ein Anfänger.
    Für das Studium habe ich angefangen C++ zu programmieren und bin schnell auf Windows API gestossen um "echte" Windowsprogramme zu programmieren

    Mein erstes Projekt war "Snake" auf API. Läuft ganz gut und ich habe sogar einen Multiplayermodus eingebaut.

    Zurück zum eigentlichen Thema,

    ich möchte als nächstes einen "Horizontal-Shooter" programmieren.
    Das Ziel darin sollte für mich sein, Klassen zu nutzen.

    Ich hatte mir das so vorgestellt, das ich ein Projektil verschieße und dafür jeweils ein Objekt erstelle.
    Das Projektil hat Membereigenschaften (Geschwindigkeit, momentane Position,...) und Funktionen.

    Soweit so gut.

    Jetzt kommt das Problem:

    Irgentwann ist das Projektil zerstört bzw aus dem Bildschirm geflogen und dann möchte ich das Objekt zerstören. Wie kann das realisiert werden?

    Dann müsste ich abfragen können, welche Objekte es noch gibt bzw. welche Projektile noch so rumfliegen. Wie nur?

    Danke schon mal im Voraus.



  • Warum nicht einfach eine Liste in der alle Projektile gespeichert sind ?
    Die kannst du dann einfach durchgehen, dabei auf Kollisionen prüfen und wenn das Objekt zerstört werden soll es einfach entfernen. Bzw. es wird automatisch zerstört, weil der Destruktor aufgerufen wird wenn du es aus der Liste entfernst.
    Dadurch dass das Objekt nur an einer Stelle gespeichert wird brauchst du dir auch um Speicherfreigabe keine Sorgen zu machen.


Anmelden zum Antworten