LegendaryBeazt
Mitglied
Ich habe Folgende Klasse:
Dazu folgende header:
Und folgende Main
Der Zaehler sollte eigentlich die Nummer des erstellten Objekts haben, sodass bei der Ausgabe k2.getZaehler() eine 2, bei k3 eine 3 usw ausgegeben werden.
Jedoch wird hier z.B. immer 4 ausgegeben...
Weis jeand zufällig wieso das so ist bzw. wie ich das ändern könnte?
Code:
#include "konto.h"
#include <iostream>
using namespace std;
static int zaehler = 0;
konto::konto(float kontostandNeu, float linieNeu)
{
kontostand = kontostandNeu;
linie = linieNeu;
zaehler++;
}
void konto:: kontostandANzeigen() {
cout << "Kontostand: " << kontostand << endl;
}
void konto:: einzahlen(float menge) {
kontostand += menge;
}
void konto:: auszahlen(float menge) {
if(kontostand-menge > linie){
kontostand -= menge;
}
else
{
cout << "Konto waere zu niedrig!" << endl;
}
}
Code:
#ifndef KONTO_H
#define KONTO_H
class konto {
public:
konto();
konto(float kontostandNeu = 0, float linieNeu = 0);
/* void kontoInitialisieren() { ersetzt durch Konstruktor!!
kontostand = 0;
linie = -100;
} */
int getZaehler();
void kontostandANzeigen();
void einzahlen(float menge);
void auszahlen(float menge);
private:
float kontostand;
float linie;
};
#endif // KONTO_H
int konto :: getZaehler(){
return zaehler;
}
Code:
#include <iostream>
#include "konto.h"
using namespace std;
int main()
{
konto konto1(100.0, 0.0);
konto k2(20.0);
konto k3(30.0);
konto k4(40.0);
cout << k2.getZaehler() << endl;
cout << k3.getZaehler() << endl;
cout << k4.getZaehler() << endl;
return 0;
}
Jedoch wird hier z.B. immer 4 ausgegeben...
Weis jeand zufällig wieso das so ist bzw. wie ich das ändern könnte?