c ++重载函数比较2个列表

时间:2018-05-10 14:21:58

标签: c++ list overloading

我想重载<操作

它们是需要比较的2个整数列表

它们用于包含数字,例如。 2526每个int作为列表中的元素

所以我知道我需要从前到后检查每个元素,看看它是否更大

但是当我创建一个迭代器std::list<Digit>::iterator lhs = this->list1.begin;

我无法比较2个迭代器,有点难过,但我可能只是缺少一些明显的东西,这就是它的样子:

数字是一个整数列表。

bool Integer::operator<(const Integer & rhs) const
{

    std::list<Digit>::iterator lhs = this->digits.begin;
    std::list<Digit>::iterator rhs = rhs.digits.begin;

    if (this->digits.size() < rhs.digits.size()) //lhs smaller length
    { 
        return true;
    }
    else
    {
        return false;                           //lhs larger 
    }

    if (this->digits.begin < rhs.digits.begin)  //first lhs digit lower
    {
        return true;
    }
    else if (this->digits.begin > rhs.digits.begin) //first rhs digit lower
    {
        return false;
    }



    return false;
}

我也读过关于使用std :: mismatch但不确定如何使用

的内容

0 个答案:

没有答案