1、重载关系运算符
与双目运算符的重载实现方式相似,唯一的区别是关系运算符重载函数的返回值是一个布尔值(true或者false)
下面是大于号(>)的重载函数:
//重载关系运算符>
//就是对两个成员变量进行一一对比
bool operator>(const FeetInches &right)
{
if(this->feet > right.feet)
return true;
else if(this->feet == right.feet && this->inches > right.inches)
return true;
else
return false;
}
2、重载流操作符<<和>>
当对象的数据成员是私有数据类型时,需要显示的调用函数成员才能访问和改变它的值。这样的话,输入输出对象并不方便。
幸好在C++中,通过重载流插入符<<和流提取符>>可以解决这类问题,像下面直接输出和改变对象distance的信息。
cout<<distance; //distance是一个对象
cin>>distance;
实际上,这两个符号都是c++预先定义在ostream和istream类中的函数,cout和cin分别是ostream和istream类