Debuggen, es fehlen noch das der richtige Musikinstrument Konstruktor aufgerufen wird wenn ein Musikinstrument aufgefrufen wird benutzt wird
This commit is contained in:
@@ -3,4 +3,4 @@
|
||||
using namespace std;
|
||||
Klavier::Klavier() { cout << "Konstruktor: Klavier()" << endl; }
|
||||
Klavier::~Klavier() { cout << "Destruktor: ~Klavier()" << endl; }
|
||||
void Klavier::spielen() { cout << "Klavier klimpert" << endl; }
|
||||
void Klavier::spielen() const { cout << "Klavier klimpert" << endl; }
|
||||
|
||||
@@ -4,5 +4,5 @@ class Klavier : public Musikinstrument {
|
||||
public:
|
||||
Klavier();
|
||||
virtual ~Klavier();
|
||||
virtual void spielen();
|
||||
virtual void spielen() const;
|
||||
};
|
||||
|
||||
@@ -9,12 +9,15 @@ Musiker::Musiker(string name) {
|
||||
this->name = name;
|
||||
cout << "Konstruktor: Musiker(string name): " << name << endl;
|
||||
}
|
||||
Musiker::~Musiker() { cout << "Destruktor: ~Musiker()" << endl; }
|
||||
Musiker::~Musiker() {
|
||||
cout << "Destruktor: ~Musiker()" << endl;
|
||||
delete this->instrument;
|
||||
}
|
||||
string Musiker::liefereName() { return name; }
|
||||
void Musiker::spielen() const {
|
||||
cout << name << " spielt " << instrument->liefereName() << endl;
|
||||
this->instrument->spielen();
|
||||
}
|
||||
void Musiker::weiseInstrumentZu(Musikinstrument const *instrument) {
|
||||
// Musikinstrument *musikinstrument = new Musikinstrument(*instrument);
|
||||
this->instrument = new Musikinstrument(*instrument);
|
||||
this->instrument = instrument;
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ Musikinstrument::Musikinstrument(string name) {
|
||||
Musikinstrument::~Musikinstrument() {
|
||||
cout << "Destruktor: Irgentein Musikinstrument" << endl;
|
||||
}
|
||||
void Musikinstrument::spielen() {
|
||||
void Musikinstrument::spielen() const {
|
||||
cout << "Irgentein Musikinstrument erklingt irgentwie" << endl;
|
||||
}
|
||||
string Musikinstrument::liefereName() const{ return name; }
|
||||
string Musikinstrument::liefereName() const { return this->name; }
|
||||
|
||||
@@ -9,6 +9,6 @@ public:
|
||||
Musikinstrument();
|
||||
Musikinstrument(std::string name);
|
||||
virtual ~Musikinstrument();
|
||||
virtual void spielen();
|
||||
virtual void spielen() const;
|
||||
std::string liefereName() const;
|
||||
};
|
||||
|
||||
@@ -5,15 +5,14 @@ using namespace std;
|
||||
|
||||
Orchester::Orchester() { cout << "Konstruktor: Orchester()" << endl; }
|
||||
Orchester::~Orchester() {
|
||||
cout << "Destruktor: ~Orchester()" << endl;
|
||||
for (int i = 0; i < musiker.size(); i++) {
|
||||
delete musiker[i];
|
||||
}
|
||||
cout << "Destruktor: ~Orchester()" << endl;
|
||||
}
|
||||
|
||||
void Orchester::hinzufuegen(Musiker const *musiker) {
|
||||
//Musiker* neuerMusiker = new Musiker(*musiker);
|
||||
Orchester::musiker.push_back(new Musiker(*musiker));
|
||||
Orchester::musiker.push_back(musiker);
|
||||
}
|
||||
void Orchester::spielen() {
|
||||
for (int i = 0; i < musiker.size(); ++i) {
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
#include "Trompete.h"
|
||||
#include "Musikinstrument.h"
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
Trompete::Trompete() { cout << "Konstruktor: Trompete()" << endl; }
|
||||
Trompete::Trompete() {
|
||||
Musikinstrument("Trompete");
|
||||
cout << "Konstruktor: Trompete()" << endl; }
|
||||
Trompete::~Trompete() { cout << "Destruktor: ~Trompete()" << endl; }
|
||||
void Trompete::spielen() { cout << "Trompete trötet" << endl; }
|
||||
void Trompete::spielen() const { cout << "Trompete trötet" << endl; }
|
||||
|
||||
@@ -5,5 +5,5 @@ class Trompete : public Musikinstrument {
|
||||
public:
|
||||
Trompete();
|
||||
virtual ~Trompete();
|
||||
virtual void spielen() override;
|
||||
virtual void spielen() const override;
|
||||
};
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -27,7 +27,12 @@ int main() {
|
||||
Musiker *MusikinstrumentMusikerPtr = new Musiker(nameMusikinstrument);
|
||||
Musikinstrument *musikinstrumentPtr = new Musikinstrument;
|
||||
MusikinstrumentMusikerPtr->weiseInstrumentZu(musikinstrumentPtr);
|
||||
std::cout << "+++ Musikinstrument Musiker erfolgreich addiert +++" << std::endl;
|
||||
std::cout << "+++ Musikinstrument Musiker erfolgreich addiert +++"
|
||||
<< std::endl;
|
||||
|
||||
Musikinstrument *musikinstrument4 = new Musikinstrument();
|
||||
Musikinstrument *musikinstrument5 = new Klavier();
|
||||
Musikinstrument *musikinstrument6 = new Trompete();
|
||||
|
||||
delete orchesterPtr;
|
||||
delete trompeteMusikerPtr;
|
||||
@@ -36,5 +41,6 @@ int main() {
|
||||
delete klavierPtr;
|
||||
delete MusikinstrumentMusikerPtr;
|
||||
delete musikinstrumentPtr;
|
||||
std::cout << "Lösche instrument4" << std::endl;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
|
||||
#include "Klavier.h"
|
||||
#include "Musiker.h"
|
||||
#include "Musikinstrument.h"
|
||||
#include "Orchester.h"
|
||||
#include "Trompete.h"
|
||||
#include <iostream>
|
||||
#include <ostream>
|
||||
#include <string>
|
||||
|
||||
int main() {
|
||||
|
||||
Reference in New Issue
Block a user