一个完整的类


// h 文件

#pragma once

class Test_Fuck
{
public:
    Test_Fuck(void){};
    virtual ~Test_Fuck(void){};
public:
    Test_Fuck(int nx){x = nx;};

public:
    Test_Fuck& operator = (Test_Fuck& one_test)   {};

    friend Test_Fuck operator -(Test_Fuck& one_test, Test_Fuck& two_test);

    Test_Fuck operator +(Test_Fuck& one_test)
    {
        int nx = this->x + one_test.x;
        Test_Fuck one_fuck(nx);
        return one_fuck;
    }

private:
    int x;

};

Test_Fuck operator -(Test_Fuck& one_test, Test_Fuck& two_test)
{
    int nx = one_test.x - two_test.x;
    Test_Fuck one_fuck(nx);

    return one_fuck;
}


注意点

1 构造函数和析构函数都没有返回值。

2 注意最后的分号。

3 操作符重载的实现方式有两种,即通过“友元函数”或者“类成员函数”。

注意操作符重载的返回值,有的是引用。

利用友元函数重载二元操作符”-“时,形式参数是两个,而利用类成员函数时,形式参数却只有一个。这时因为类成员函数中存在this指针,这相当于一个参数,所以类成员实现操作符重载需要的形式参数比原来少一个,


// cpp 文件

Test_Fuck::Test_Fuck(void)
{
}

Test_Fuck::~Test_Fuck(void)
{
}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值