gpt4 book ai didi

c++ - STL 列表和迭代器

转载 作者:太空宇宙 更新时间:2023-11-04 14:46:10 26 4
gpt4 key购买 nike

您好,我只是无法让它工作。我有 4 个成员的结构,我创建了列表和迭代器:

std::list<structure> one;
std::list<structure>::iterator two;

现在我想访问元素:

one.end-1;
two = one.end()-1;

它不起作用 >.> 编译器抛出 14 个错误。

错误如下:

它们都是这样的:

Glowne.cpp(105) : error C2784: 'reverse_iterator<_RanIt>::difference_type std::operator -(const std::reverse_iterator<_RanIt> &,const std::reverse_iterator<_RanIt2> &)' : could not deduce template argument for 'const std::reverse_iterator<_RanIt> &' from 'std::list<_Ty>::_Iterator<_Secure_validation>' with [ _Ty=Klient, _Secure_validation=true ]

一切都很好,感谢您提到后退方法,真的,你们很棒。

最佳答案

双向迭代器(由 std::list 使用)不支持“指针运算”,仅支持单步:

two = one.end();
--two;

另外,语句 one.end-1; 完全没有任何效果,我会去掉它。

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

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