Java中的指针、矢量和迭代器
Pointer, Vector and Iterator in Java
我有一些关于向量、指针和迭代器的C++代码。但我不确定代码是做什么的。我想,它使用迭代器进行迭代,以获取或检查每个向量值,然后当值内部向量仍然没有结束或有下一个值时,它将创建一个向量名称v,其中填充了来自d的指针。这是对的吗?现在,我想把这些代码转换成java代码,尤其是java Android。到目前为止,我已经转换到WHILE部分。我不知道如何转换节,用指针创建新的矢量。你能帮我吗?非常感谢。
C++代码:
size_t count = contours_hull[i].size();
if( count < 300 )
continue;
vector<Vec4i>::iterator d =defects[i].begin();
while( d!=defects[i].end() ) {
Vec4i& v=(*d); //this line, i can't convert.
//another code
}
我做的Java代码:
for(int i = 0; i < contours_hull.size(); i++) // I added this line, because in java "continue" cannot use in outside loop, so i make loop here.
{
int count = contours_hull.size();
if (count < 300) continue;
List<MatOfInt4> defect = new ArrayList<MatOfInt4>();
Iterator d = defect.iterator();
while (d.hasNext)
{
//the line "Vec4i& v=(*d);" that i can't convert
}
}
这样改造他们是对的吗?对于尚未转换的代码,我应该写些什么?有人能帮我吗???
这只是一个尊重运算符。它相当于Java代码中的ListIterator.next()。考虑到C++代码将其存储为引用,它基本上是相同的。
相关文章:
- std::vector::迭代器是否可以合法地作为指针
- 不明白迭代器,引用和指针失效,一个例子
- 为什么 vector 的随机访问迭代器给出与指针不同的内存地址?
- 在C++中释放内存期间,迭代器与指针有何不同
- 迭代器的指针操作问题
- 对于随机访问迭代器(矢量迭代器),迭代器C++样式指针吗?
- 专门C++使用指针值类型的通用迭代器的模板函数?
- 从 std::vector 迭代器中执行函数指针
- 使用 map<char,strring> 的迭代器返回指针 map<char,strring>*
- 迭代器是否分配内存(如指针)?
- 如何在C++中重新实现包含指针的 STL 容器的类的迭代器
- 向量<pointer>:插入(迭代器,指针)插入垃圾值
- 迭代器可以变成指针吗?
- 使用迭代器指针 (C++) 从对象指针列表中删除元素
- 迭代器指针不引用第一个元素
- "strong"迭代器指针/引用
- c++ 如何将迭代器指针传递给通过引用需要对象的函数
- 泛型迭代器/指针初始化
- 断言模板实参是一个迭代器/指针
- 将输入迭代器(指针)复制到vector