// h 文件
#pragma once
{
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)
{
}