gpt4 book ai didi

c++ - 对于迭代器,我的 vector 包装器的 'begin' 和 'end' 函数要返回什么?

转载 作者:行者123 更新时间:2023-11-30 01:28:09 27 4
gpt4 key购买 nike

我有一个名为 PointList 的类,它包含 Point * 对象的 vector 作为其主要数据。我想以与 vector 相同的方式遍历点,有点像这样:

for (vector<Point *>::iterator it = point_list->begin(); it != point_list->end(); ++it)

很明显我写的 begin() 和 end() 函数只能返回它们持有的 vector 的 begin/end 函数,但是这些函数的返回类型是什么?

最佳答案

如果我对问题的理解是正确的,那么你的问题的答案就是正确的。您已经在代码段中使用了 beginend 的返回值和类型。

vector<Point *>::iterator it = point_list->begin();

显然, 保存着 begin() 的返回值,而且它的类型是众所周知的:

vector<Point *>::iterator

顺便说一句,有点题外话 - 为什么 point_list 是指向 vector 的指针,而不是对象?其次,为什么它被称为列表,因为它是 vector?使用 vectorarraysequence,但不要使用 list,因为它可能会产生误导。 list是一个STL容器,不同于vector

关于c++ - 对于迭代器,我的 vector 包装器的 'begin' 和 'end' 函数要返回什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7960308/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com