ADT 友元函数 重载操作

抽象数据类型(Abstract Data Type,ADT)

使用ADT遵循以下规则:

第一:将所有成员变量设为类的私有成员

第二:将用户程序员需要的每个基本操作都设置为类的公共成员函数,并完善地指定如何使用每个公共成员函数;

第三:将任何帮助函数设置为私有成员函数。

在成员函数下使用const 放在函数声明的后面如下 

class Money
{
     public:
     void output(ostream& outs) const;
 
}
修饰符const 要求同时用于函数声明和函数定义中所以函数output 的函数定义像下面那样:

void Money::output(ostream& outs) const
{
..................
}

修饰符const 要么不用要么都用针对任何类参数以及类的成员函数,只要允许就应该使用修饰符const 如果const 并不是每次适合一个类,就永远不要为那个类使用它了。

使用<<插入操作符是二元操作符像+, -那样。

ostream& operator<<(ostream&outs,const Monday& amount)
{
	...........
	return 0;
}

在返回类型中只要是操作符或者函数返回一个流,就必须在返回类型 名称末尾加一个&。这个简单的规则允许重载<<或>>

为返回值类型名称类型后面添加&意思是操作符或函数要返回一个引用,前面讲的所有函数和操作符只是一个返回值,但是如果一个返回值死一个流,就不能简单的返回流的值。

因为对于一个流,它的值可能是一个完整的文件,一个键盘或者屏幕,而返回的那些东西是没有什么意义的,所以你可考虑只返回流本身而不是流的值。为返回类型名称后面加一个& 就指明操作符或者函数要返回一个引用,着表示返回的是对象本身,而不是对象的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值