我有以下代码,其中我试图比较此对象与另一个对象。但是,当我尝试运行它给分段错误。在告诉我要做什么改变的同时,告诉我为什么会引发分段错误尝试比较调用对象与另一个对象时的分段错误
#include<iostream>
using namespace std;
class opo
{
public:
bool operator==(opo temp);
};
bool opo::operator==(opo temp)
{
if(*this == temp)
{
cout<<"same\n";
return true;
}
else
{
cout<<"diff\n";
return false;
}
}
int main()
{
opo a1,a2;
a1==a2;
return 0;
}
好笑。 *你怎么知道两个对象是否相等?* - 答案 - *它们是平等的,因为它们是相等的*。这就是你的代码所说的。 – PaulMcKenzie