编写一个表示银行账号的类BankAccount,包含三个私有成员,分别表示账号号码(int型)、余额以及利率。你的类中至少实现以下成员函数: 1.1)构造函数。在构造函数中初始化存款余额、利率以及账号号码。账号不能重复,请设计一个私有静态成员函数用于生成新账号号码,账号号码按递增方式生成,初始号码为1,每一次调用该函数得到的新号码在原号码上加一。在构造函数中调用改函数初始化账号号码。
时间: 2024-03-08 12:45:34 浏览: 95
好的,以下是一个简单的 BankAccount 类的实现,其中包括构造函数和静态成员函数:
```c++
#include <iostream>
#include <string>
using namespace std;
class BankAccount {
private:
int accountNumber;
double balance;
double interestRate;
static int nextAccountNumber;
public:
BankAccount(double bal, double rate) {
accountNumber = getNextAccountNumber();
balance = bal;
interestRate = rate;
}
void deposit(double amount) {
balance += amount;
}
void withdraw(double amount) {
if(balance >= amount) {
balance -= amount;
} else {
cout << "Insufficient funds" << endl;
}
}
void display() {
cout << "Account Number: " << accountNumber << endl;
cout << "Balance: " << balance << endl;
cout << "Interest Rate: " << interestRate << endl;
}
private:
static int getNextAccountNumber() {
return ++nextAccountNumber;
}
};
int BankAccount::nextAccountNumber = 0;
int main() {
BankAccount account1(1000.0, 0.05);
account1.display();
BankAccount account2(500.0, 0.02);
account2.display();
account1.deposit(500.0);
account1.display();
account2.withdraw(200.0);
account2.display();
return 0;
}
```
在上面的代码中,我们定义了一个银行账号类 BankAccount,它包含账号号码、余额和利率等属性。我们用构造函数初始化这些属性,并实现了存款、取款和显示账户信息等方法。在构造函数中,我们调用了一个静态成员函数 getNextAccountNumber() 来生成新的账号号码,这个函数会自动递增,确保每个账号号码都是唯一的。在主函数中,我们创建了两个 BankAccount 对象,并对它们进行了一些基本的操作,最后显示了账户信息。
阅读全文