Also ich glaub ich habs jetzt fertig:
Die Klasse erfüllt die Aufgabenstellungen...
Und man muss noch beachten, dass man save dynamisch anlegen muss, da das Array save nach der if Schleife zerstört werden würde...
lg Meiki
p.s.: Danke für die Hilfe!
C++:
using namespace std;
#include<iostream>
#include<list>
class DynArray {
private:
list<int*> array;
int Index;
int* arr;
int *save;
public:
DynArray () : Index(0) { // Konstruktor
arr = new int [20];
}
~DynArray() { //Destruktor
delete arr;
}
int& operator[](int str) {
return arr[str];
}
void operator= (int wert) {
if (Index == 20) { // Überprüft ob das Array voll ist
save = new int [20];
for (int i = 0; i < 20; i++) { // Kopiert die Werte aus arr in das Array save
save[i] = arr[i];
}
array.push_back(save); // Das Array wird in die Liste kopiert und angehängt
Index = 0; // Index wieder auf 0 setzten
arr[Index] = wert; // Array neu mit Werten füllen
}
else {
arr[Index] = wert; // Falls der Array noch nicht voll ist wird das Array weiter gefüllt
}
Index++; // Index erhöhen
}
friend ostream& operator<< (ostream& o, DynArray const& x); // Ausgabeoperator a
};
ostream& operator<< (ostream& o, DynArray const& x) { // Augabeoperator b
for (int i = 0; i < x.Index; i++)
o << x.arr[i] << endl;
}
Die Klasse erfüllt die Aufgabenstellungen...
Und man muss noch beachten, dass man save dynamisch anlegen muss, da das Array save nach der if Schleife zerstört werden würde...
lg Meiki
p.s.: Danke für die Hilfe!