Änfängerfrage Versuch erste eigene Library zu erstellen

Erstelle einfach einen Destruktor der die Arrays mit delete[] löscht. Das ist alles. Das sind wirklich OOP Grundlagen. Damit meine auch dass es dazu Online zig Seiten gibt wo das erklärt wird.

Ach OK, um die Klasse vollständig zu haben, wenn man sie mal anderweitig verwendet und um sie da zerstören zu können.

Jetzt habe ich dich verstanden. Sorry hatte ein "lange Leitung" ich war gedanklich immer nur in der Ablaufprogrammierung.

Danke und viele Grüße

Ein Objekt wird automatisch zerstört wenn es seinen Gültigkeitsbereich verlässt.

Sowas kannst du ganz einfach testen:

class Test
{
public:
  Test()
  {
    Serial.println("Konstruktor");
  }

  ~Test()
  {
    Serial.println("Destruktor");
  }
private:
};

void setup()
{
  Serial.begin(9600);

  Test test;
}

void loop()
{
}

Das ist auch sehr gut um zu verstehen in welcher Reihenfolge Objekte angelegt und zerstört werden wenn man Vererbung verwendet

Ein Objekt wird automatisch zerstört wenn es seinen Gültigkeitsbereich verlässt.

Das ist richtig und ein schönes Beispiel. Hat nur nicht direkt mit new / delete zu tun. Da lässt C++ dem Programmierer viele Möglichkeiten, Fehler zu machen.

Hat nur nicht direkt mit new / delete zu tun.

Aber sicher doch!!
Dann vergesse mal den Destruktor...... wenn sich wie hier ein new in einer Methode befindet.

Probiere es aus, und du wirst sehen, was das ganz direkt mit delete zu tun hat.

michael_x:
Hat nur nicht direkt mit new / delete zu tun.

Es ging darum zu verstehen dass Konstruktoren und Destruktoren spezielle Methoden sind die automatisch zu bestimmten Zeitpunkten aufgerufen werden. Dass man im Destruktor hinter sich aufräumen soll hatte er denke ich schon verstanden.

Das mit dem Speicher sieht man wenn man noch eine Funktion einfügt die einem den verbrauchten RAM-Speicher anzeigt