操作符重载

来源:互联网 发布:淘宝店铺流量分析 编辑:程序博客网 时间:2024/05/01 20:50

操作符重载

重载&&、||或逗号以及取地址操作符不是一种好的做法

定义了+操作符,也应该定义+=和=操作符

一般将算术和关系操作符定义为非成员函数而将赋值操作符定义为成员

= [] ()和->等操作符必须定义为成员将这些如果定义为非成员函数将在编译时标记为错误
+=通常应定义为类的成员。但是不一定非得这么做,如果定义非成员复合赋值操作符不会出现编译错误
自增、自减和&操作符通常定义为类成员
算术操作符、相等操作符、关系操作符和位操作符定义为普通非成员函数

输出操作符<<的重载

ostream operator<<(ostream &os, const ClassType &object)
{
 os<<;
 return os;
}

第一个形参是对ostream对象的引用,在该对象上将产生输出。ostream为非const,因为写入到流会改变流的状态。该形参是一个引用,因为不能复制ostream对象。

IO操作符必须为非成员函数

原创粉丝点击