C++Primer Plus对象和类的练习,练习1,类成员函数和成员变量的使用

1.为复习题5描述的类提供方法定义,并编写一个小程序来演示所有的特性。
下面是复习五的状况

5.定义一个类来表示银行帐户。数据成员包括储户姓名、账号(使用字符串)和存款。成员函数执行如下操作:
创建一个对象并将其初始化;
显示储户姓名、账号和存款;
存入参数指定的存款;
取出参数指定的款项。

类的声明

#include <iostream>
using namespace std;
class TBankAccount
{
public:
	TBankAccount(string name, string acc_num, unsigned balance);
	void showName(void)const;
	void showAccNum(void)const;
	void showBalance(void)const;

	void incDeposit(unsigned amount);
	void decDeposit(unsigned amount);
	TBankAccount();
	~TBankAccount();

private:
	string m_name;
	string m_accNum;
	unsigned m_balance;
};

构造函数和析构函数,及成员变量和成员函数的实现


TBankAccount::TBankAccount()
{
	m_balance = 0;
	cout << "Start\n";
}
TBankAccount::~TBankAccount()
{
	cout << "Bye!\n";
}
TBankAccount::TBankAccount(string name, string acc_num, unsigned balance)
{
	m_name = name;
	m_accNum = acc_num;
	m_balance = balance;
}
void
TBankAccount::showName(void)const
{
	cout << m_name;
}
void
TBankAccount::showAccNum(void)const
{
	cout << m_accNum;
}
void
TBankAccount::showBalance(void)const
{
	cout << m_balance;
}
void
TBankAccount::incDeposit(unsigned amount)
{
	m_balance += amount;
}
void
TBankAccount::decDeposit(unsigned amount)
{
	if (m_balance<= amount)
	{
		m_balance = 0;
	}
	else
	{
		m_balance -= amount;
	}
}

主函数的引用

int
main()
{
	cout << "--------------------------------\n";
	cout << "初始化用参数\"zhang\",\"1\",12" << endl;
	TBankAccount	zhang("zhang", "1", 12);
	zhang.showName();
	cout << endl;
	zhang.showAccNum();
	cout << endl;
	zhang.showBalance();

	cout << endl<<"增加128" ;
	zhang.incDeposit(128);
	cout << endl;
	zhang.showBalance();
	cout <<endl<< "减少300";
	zhang.decDeposit(300);
	cout << endl;
	zhang.showBalance();
	cout << endl;

	return 0;
}

这里需要说明一下,这个程序是不完整的,
1,首先账号输入必须要满足位数序求。
2,金额需要选择double类型,
3,界面交互不够完善,谈不上交互,这里没做过深的探索

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值