如何比较矢量?

Kul*_*lis 0 c++ vector

如何比较两个向量?两个币头的整数值:

void interaction(vehicles::position &pos, int number, enviroment object)
{
    for (auto i = object.x.begin(); i<object.x.end(); i++)
        for (auto j = object.y.begin(); j<object.y.end(); j++)
            if (pos.x[number] == object.x[i] && pos.y[number] == object.y[j])
                cout << "\nInteraction\n";
}
Run Code Online (Sandbox Code Playgroud)

第一个向量(在课堂上声明):

int remaining_move;
     struct position{
         vector<int> x;
         vector<int> y;
     }pos;
Run Code Online (Sandbox Code Playgroud)

第二:

struct enviroment
{
    vector<int> x;
    vector<int> y;
    string graphic;
};
Run Code Online (Sandbox Code Playgroud)

错误: 错误

Lig*_*ica 6

object.x[i] 
Run Code Online (Sandbox Code Playgroud)

这是错的.如果它i是一个数字索引,它将起作用,但它不是:它是一个迭代器.

代替:

*i
Run Code Online (Sandbox Code Playgroud)

因此,我进一步建议称之为其他的东西i; 怎么样it

此外,您的内部循环条件是错误的.你写了i,而不是j.两次. [编辑:现在你已经解决了问题,出于某种原因]