c++(关系运算符、流操作符与类型转换运算符重载)

本文介绍了C++中如何重载关系运算符,如大于号(>),以及流操作符<<和>>,用于自定义类型的数据输入输出。通过友元函数实现流操作符的重载,允许直接对类的私有数据成员进行操作。此外,还讨论了通过重载类型转换运算符实现对象到其他类型的数据转换,以简化程序处理。
摘要由CSDN通过智能技术生成

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类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值