#include <iostream>
#include <string>
using namespace std;
#define PI 3.1415926
/*定义一个共享信用卡类CCard,每张卡包含卡号id和密码pass,所有该信用卡类产生的对象共享信用卡额度money,
有还款void deposit(double m)和取款二种方法void draw(double m)。
显示额度方法void showMoney()定义成静态成员函数。*/
class card
{
public:
int id;
int pass;
card(int a, int b) :id(a), pass(b) {}
void deposit(double m);
void draw(double m);
static void showMoney();
private:
static int money;
};
int card::money = 10000;
void card::deposit(double m)
{
money=money+m;
}
void card::draw(double m)
{
money = money - m;
}
void card::showMoney()
{
cout << "Money" << money << endl;
}
int main()
{
int a,b;
card c1(111111, 8888);
cout << "ID" << endl;
cin >> a;
while (a != c1.id)
{
cout << "ID ERROR" << endl;
cout << "ID:" ;
cin >> a;
}
cout << "PASS" << endl;
cin >> b;
while (b != c1.pass)
{
cout << "PASS ERROR" << endl;
cout << "PASS:";
cin >> b;
}
int x, y;
cout << "还款输入1,取款输入2" << endl;
cin >> x;
if (x == 1)
{
cout << "还款金额:" ;
cin >> y;
c1.deposit(y);
c1.showMoney();
}
if (x == 2)
{
cout << "取款金额:";
cin >> y;
c1.draw(y);
c1.showMoney();
}
}
定义一个共享信用卡类CCard,每张卡包含卡号id和密码pass,所有该信用卡类产生的对象共享信用卡额度money,
有还款void deposit(double m)和取款二种方法void draw(double m)。
显示额度方法void showMoney()定义成静态成员函数。