Zitat Zitat von HaWe Beitrag anzeigen
jap, das mit free ist klar
aber wenn man's nicht vergisst...?
Spätestens wenn mehrere an einem Programm arbeiten, wird es irgendwann wer vergessen.

Deshalb sieht es in modernem C++ jetzt so aus, statt
Code:
void f()
{
    int* pi = new int;

     // ...

    delete pi;
}
nur noch
Code:
void f()
{
     auto pi = std::make_unique<int>();

     // ...
}
gelöscht wird automatisch, wenn irgendwo (auch durch eine exception) die Klammern verlassen werden.


Die Zusatzfrage überlasse ich dann mal den sicher bald erscheinenden C-Experten.