c++ - 迭代器和二维 vector

标签 c++ stl vector iterator

vector< vector<int> >::iterator temp = mincost.end();
vector<int> a = *temp;
if ( *temp != *(temp--) ) 
    return 0;

mincost是一个二维 vector ,我想得到最后一个 vector<int>这个载体和last-- . 我不太了解迭代器 :) 。帮我 !! :D 谢谢^^

最佳答案

minconst.end()指向元素 one-past-the-end vector minconst;它不指向 vector 中的最后一个元素。

既然您想要最后两个元素,您应该首先测试以确保 vector 中确实两个元素,否则您将不可避免地遇到问题。然后,访问 vector 中的最后一个元素只需 *(minconst.end() - 1) 等等。

C++ 引用也有 a description of iterators .

关于c++ - 迭代器和二维 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1746499/

相关文章:

c++ - 当 CPU 负载过大时 pthread_cond_timedwait 超时

c++ - 插入 unordered_map 时没有匹配函数

c++ - 在 MyVector 中实现写时复制习惯用法

c++ - 最快队列容器 (C++)

r - 一种更优雅的方式,将两个向量组合为单独的列(或数据帧),匹配行,并在不匹配的地方具有 NA

c++ - 如何防止相机 vector 中的浮点错误

c++ - 如何使用 Android ndk 进行 HTTP 请求

C++ OOP 基础 - 正确返回对象引用?

c++ - 在 C++ 中检查空静态映射变量

c++ - std::count 和 std::find 之间的性能差异