std::迭代器已经过时了?那用什么呢?


for(std::vector<TMenuItem*>::iterator itItem=miMoreStylesArray.begin(); itItem<miMoreStylesArray.end(); itItem++) {

如果 std::itrator 被淘汰了,那么我应该用什么来迭代向量呢?

std::iterator与标准库容器的迭代器无关,例如std::vector

虽然std::iterator确实被弃用了,但std::vector<TMenuItem*>::iterator肯定不是。

仅当您将std::iterator用作基类来实现您自己的自定义迭代器类时,弃用它才与您相关。

使用std::iterator是为了帮助您实现迭代器特征。 但是,您可以自己轻松地实现迭代器及其内部特征,而无需std::iterator,请参阅:为std::迭代器被弃用的准备。

标准容器内的迭代器保持不变。请注意,它们是在各自的容器内声明的(例如vector<T>::iterator),而不是直接在性病内。

相关内容

  • 没有找到相关文章

最新更新