c++ - 我怎样才能将另一个迭代器的地址归因于一个迭代器?

标签 c++ c++11

我想将另一个迭代器的地址 +1 归因于一个迭代器以继续进入一个字符串 vector 。这是我的代码:

'    for(auto it:cuvinte)
    {
        int nr=1;
        incercare.clear();
        incercare.push_back(it);
        for(auto i2:cuvinte)
        {
            if(incercare.back()[incercare.back().size()-1]==i2[0])
            {
                ++nr;
                incercare.push_back(i2);
            }
            if(nr>maxim)
                {
                    maxim=nr;
                    solutie=incercare;
                }

        }'

我希望 i2 获得 it+1 的地址,使其在 vector 中位于 it 的右侧。请帮助我。

最佳答案

下面的代码应该可以完成工作。只是改变了innerloop的起点。

for (auto it = cuvinte.begin(); it != cuvinte.end(); ++it)
{
    int nr = 1;
    incercare.clear();
    incercare.push_back(*it);
    for (auto i2 = it+1; i2 != cuvinte.end(); ++i2)
    {
        if (incercare.back()[incercare.back().size()-1] == (*i2)[0])
        {
            ++nr;
            incercare.push_back(*i2);
        }
        if (nr > maxim)
        {
            maxim = nr;
            solutie = incercare;
        }
    }
}

关于c++ - 我怎样才能将另一个迭代器的地址归因于一个迭代器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55001593/

相关文章:

c++ - BN_CTX_free() 与 BN_CTX_end() EXC_BAD_ACCESS 异常

c++ - 反序列化没有默认构造函数的类型的STL容器

c++ - 在递归函数中声明一个静态变量。堆栈溢出

c++ - 哪个版本的 C++ 标准允许重用先前由具有 const 或引用成员的类的对象占用的存储空间?

c++ - TCP 服务器未正确接收数据

c++ - 在字符串中查找所有具有最大长度的有序序列

c++ - Qt框架使用ffmpeg库报错

c++ - 如何解释 "void(*)()"?

c++ - std::async 和对象复制

c++ - 我如何将 Javascript 正则表达式转换为 C++11 正则表达式