简单的bankaccount程序无法编译

时间:2015-05-26 23:25:44

标签: c++

所以我喜欢在c ++中创建一个简单的银行帐户,用简单的方法来添加或取出资金并检查当前的余额,但它不会编译,我不知道为什么。变量和方法都是德语,但我希望它很清楚。

konto.h:

#include <stdio.h>
#include <string>

class Konto
{
public:
    Konto();
    ~Konto();
    void einzahlen(float geld);
    void abheben(float geld);
    float kontostand();
    float balance;

};

konto.cpp

#include "konto.h"

Konto::Konto()
{
    balance = 0;
}

Konto::~Konto()
{

}

void Konto::einzahlen(float geld)
{
    balance += geld;
}

void Konto::abheben(float geld)
{
    balance -= geld;
}

float Konto::kontostand()
{
    return balance;
}

的main.cpp

#include "konto.h"

void getKontostand(Konto k)
{
    printf("Aktueller Kontostand: %f⁄n", k.kontostand());
}
int main()
{
    Konto k(0);
    k.einzahlen(1000);
    k.abheben(400);
    k.abheben(400);
    getKontostand(k);
}

1 个答案:

答案 0 :(得分:4)

您的构造函数被声明为无参数

Konto::Konto()

但您在int

中传递了一个main()参数
Konto k(0);

您可以考虑使用默认参数:

Konto::Konto(int bal = 0): balance(bal){}

所以您现在可以选择指定初始余额

Konto k(42); // we can specify the initial balance

或使用默认

Konto k(); // initial balance is by default 0