当迭代遍历一个容器时,例如向量或deque,它包含连续内存中的元素,很容易理解,通过递增迭代器以指向向量中的下一个元素,例如在下面的循环中,它可能只是将迭代器的地址增加向量中元素的大小,在本例中为int= vec.end(); it++) // do something on each element
我相信使用迭代器的好处是我们可以将算法代码
我尝试将数字1,4,7...97存储到一个向量中。如果我使用std::out for i;<<循环正在工作。但是push_back给出了一个错误: base of member reference是一个函数,你可能打算不带参数地调用它。我用谷歌搜索了一下,找不到一个对我有帮助的答案。我发现的唯一一件事是: “在C++中,将元素添加到向量可能会导致包含的数据重新分配,这将使所有迭代器无效。这意味着您不能在插入新元素的
我有一个像optional<std::vector<string>> vec = {"aa", "bb"};这样的可选向量for (string v : vec) {}error: no matching function for call to ‘beginbasic_string<char> > >&