📄 111.txt
字号:
class Currency {
p u b l i c :
// 构造函数
1 8 第一部分预备知识
下载
Currency(sign s = plus, unsigned long d = 0, unsigned int c = 0);
// 析构函数
~Currency() {}
bool Set(sign s, unsigned long d, unsigned int c);
bool Set(float a);
sign Sign() const
{if (amount < 0) return minus;
else return plus;}
unsigned long Dollars() const
{if (amount < 0) return (-amount) / 100;
else return amount / 100;}
unsigned int Cents() const
{if (amount < 0)
return -amount - Dollars() * 100;
else return amount - Dollars() * 100;}
Currency Add(const Currency& x) const;
Currency& Increment(const Currency& x)
{amount += x.amount; return *this;}
void Output() const;
p r i v a t e :
long amount;
} ;
程序1-22 新的构造函数及S e t函数
Currency::Currency(sign s, unsigned long d, unsigned int c)
{// 创建Currency 对象
if (c > 99)
{// 美分数目过多
cerr << "Cents should be < 100" << endl;
e x i t ( 1 ) ; }
amount = d * 100 + c;
if (s == minus) amount = -amount;
}
bool Currency::Set(sign s, unsigned long d,
unsigned int c)
{// 取值
if (c > 99) return false;
amount = d * 100 + c;
if (s == minus) amount = -amount;
return true;
}
bool Currency::Set(float a)
{// 取值
第1章C ++程序设计1 9
下载
sign sgn;
if (a < 0) {sgn = minus; a = -a;}
else sgn = plus;
amount = (a + 0.001) * 100;
if (sgn == minus) amount = -amount;
return true;
}
程序1-
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -