LegendaryBeazt
Mitglied
Grüß Gott,
ich hänge gerade bei einem kleinen Problem fest und könnte eure Hilfe gebrauchen.
Folgende Aufgabe: Man soll eine Ablage erstellen. Diese hat einen Wert und eine Ablage next. Jede Ablage hat einen Zeiger Ablage *oben der auf das oberste zeigt. Die Methoden drauflegen, runternehmen, top und allesAusgeben sollen erstellt werden. So hab ich das jetzt erstmal gemacht:
Ablage Header:
ablage cpp:
Und in der Main könnte es so aussehen:
Ich hätte da 2 Fragen:
1.) (Hier gibt es kein richtig oder falsch, ich hab nur keine Idee was man da machen könnte) Man soll einen geeigneten Konstruktor für die Ablage erstellen. Mir fält nicht ein was für Attribute man der Ablage geben könnte.
2.) Von der Ablage soll alles in eine andere Ablage kopiert werden und zwar so, dass es in der gleichen Reihenfolge ist. Man darf nur eine Zwischenablage und die bestehenden Methoden benutzen. Ich hab auch hier keinen Ansatz wie man das machen könnte.
Gruß Max
ich hänge gerade bei einem kleinen Problem fest und könnte eure Hilfe gebrauchen.
Folgende Aufgabe: Man soll eine Ablage erstellen. Diese hat einen Wert und eine Ablage next. Jede Ablage hat einen Zeiger Ablage *oben der auf das oberste zeigt. Die Methoden drauflegen, runternehmen, top und allesAusgeben sollen erstellt werden. So hab ich das jetzt erstmal gemacht:
Ablage Header:
Code:
#ifndef ABLAGE_H
#define ABLAGE_H
class ablage
{
public:
ablage();
void drauflegen(int x);
void runternehmen();
int top();
void allesAusgeben();
private:
int info;
ablage *next;
static int cnt;
ablage *oben = nullptr;
};
#endif // ABLAGE_H
ablage cpp:
Code:
#include "ablage.h"
#include <iostream>
using namespace std;
ablage::ablage()
{
}
int ablage::cnt = 0;
void ablage::drauflegen(int x) {
ablage *p = new ablage;
p->info = x;
p->next = oben;
oben = p;
cnt++;
}
void ablage::runternehmen() {
ablage *help;
if(cnt ==0) {
cout << "Ablage ist leer!" << endl;
help = nullptr;
}
else {
help = oben->next;
cnt--;
}
delete oben;
oben = help;
}
int ablage::top() {
return oben->info;
}
void ablage::allesAusgeben() {
ablage *p = oben;
while(p != nullptr) {
cout << p->info << endl;
p = p->next;
}
}
Und in der Main könnte es so aussehen:
Code:
ablage a;
a.drauflegen(2);
a.drauflegen(9);
a.drauflegen(3);
a.drauflegen(8);
a.drauflegen(5);
a.allesAusgeben();
Ich hätte da 2 Fragen:
1.) (Hier gibt es kein richtig oder falsch, ich hab nur keine Idee was man da machen könnte) Man soll einen geeigneten Konstruktor für die Ablage erstellen. Mir fält nicht ein was für Attribute man der Ablage geben könnte.
2.) Von der Ablage soll alles in eine andere Ablage kopiert werden und zwar so, dass es in der gleichen Reihenfolge ist. Man darf nur eine Zwischenablage und die bestehenden Methoden benutzen. Ich hab auch hier keinen Ansatz wie man das machen könnte.
Gruß Max