#include<iostream>
using namespace std;
#include <string.h>
class person
{
public:
person(string name, int age)
{
m_name = name;
m_age = age;
}
//重载关系运算符
bool operator==(person& p)
{
if (this->m_name == p.m_name && this->m_age == p.m_age)
{
return true;
}
return false;
}
bool operator!=(person& p)
{
if (this->m_name == p.m_name && this->m_age == p.m_age)
{
return false;
}
return true;
}
string m_name;
string m_age;
};
void test01()
{
person p1("ZZ",20);
person p2("ddd",5);
if (p1 == p2)
{
cout << "p1=p2" << endl;
}
else
{
cout << "p1!=p2" << endl;
}
if (p1 != p2)
{
cout << "p1!=p2" << endl;
}
else
{
cout << "p1=p2" << endl;
}
}
int main()
{
test01();
system("pause");
return 0;
}
【C++】关系符号运算重载
最新推荐文章于 2024-11-14 19:11:37 发布
这个博客展示了如何在C++中为自定义类重载相等`==`和不等`!=`运算符。通过创建一个`person`类,博主演示了如何比较两个对象的姓名和年龄属性来确定它们是否相等。在`test01`函数中,使用这些重载的运算符检查两个`person`对象的实例是否相等,并打印出相应的结果。
摘要由CSDN通过智能技术生成