account.h

来自「一个模仿ATM提款机的MFC程序」· C头文件 代码 · 共 65 行

H
65
字号
// Account.h: interface for the Account class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_ACCOUNT_H__A3F65E2D_6371_4B92_8DEA_4F8D17E7BA90__INCLUDED_)
#define AFX_ACCOUNT_H__A3F65E2D_6371_4B92_8DEA_4F8D17E7BA90__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "stdafx.h"
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <iomanip.h>
#include <fstream.h>

//////////////////////////////////////////////////////////////////////////
///						 Account基类的定义声明
//////////////////////////////////////////////////////////////////////////

class Account
{
	public:
		Account(){balance=0;
		password="";
		acntNumber="";
		}
		Account(CString accNo,CString paswrd,bool location,bool bank);		//建立一个帐户
		virtual ~Account();								//析构帐户
		bool checkPassword(CString Password);	//检查密码
		void changePassword(CString Password); //更改密码
		CString GetacntNo();							//返回帐号
		virtual void loadFile(ostream & out);			//帐户信息存盘
		void reloadbalance(double);	//重载总余额
		double GetBalance(){return balance;
		}
		double GetCheckFee(double money){				//查询费,依据属地跟属行
			if (location&&(!bank)) {return 0.3;}		//如果是本地跨行则收取3角
			if ((!location)&&(!bank)) {return 4;}		//如果是外地跨行则收取4元
			return 0;									//否则不收费
		}
		double GetWithdrawFee(double money){			//取款费,依据属地跟属行
			if (location&&(!bank)) {return 2;}			//如果是本地跨行则为2元
			if ((!location)&&(!bank)) {
				double temp=money*0.005;
				return temp<5?temp:5;
			}											//如果是异地跨行则收取5%,不低于5元
			return 0;									//否则不收费
		}
	protected:
							
		CString acntNumber;								//帐号
		CString password;								//密码													
		double balance;									//总余款
		
		bool location;								//是否属于本地
		bool bank;									//是否属于本银行

};

ostream& operator <<(ostream & out ,Account &Ac);

#endif // !defined(AFX_ACCOUNT_H__A3F65E2D_6371_4B92_8DEA_4F8D17E7BA90__INCLUDED_)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?