我正在尝试在用户定义的类中创建一个方法,该方法将比较两个长度,如果隐式参数大于显式参数,则返回true,但它一直说我不能使用>符号,并且不确定为什么。任何帮助将不胜感激。

bool isGreaterThan(English_length&L)
{
if (isGreaterThan(L)>L)
    return true;
else
    return false;

}

最佳答案

我假设isGreaterThan是成员函数,而您想要的是:

bool isGreaterThan(English_length&L)
{
if ( *this > L)
    return true;
else
    return false;

}


将调用的对象与作为参数传递的对象进行比较。或更简单:

bool isGreaterThan(English_length&L)
{
    return *this > L
}

10-05 22:54