class barray { int *data; unsigned size; int low, high; public: barray(int l, int h); }; barray::barray(int l, int h) // FALSCH! : size(h-l+1), low(l), high(h), data(new int[size]) {// hier alle moeglichen Tests}
Das geht schief !!!
Bei der Initialisierung von data ist size noch nicht initialisiert, da die Initialisierung in der Reihenfolge der Deklaration geschieht.
Gute Idee:
Initialisierungslisten auch in dieser Reihenfolge schreiben.