在Lippman的C ++入门第4版中,给出了向量和双端队列迭代器的复合赋值运算符:
iter1 += iter2
iter1 -= iter2
迭代器加法和减法的复合赋值版本。指定将iter1和iter2加到或减去iter1的值。
但是当我想使用它们时,它会给出错误。此外,为迭代器提供复合赋值运算符意味着什么呢?
答案 0 :(得分:4)
我在李普曼看了这个。对我来说,这看起来像是一个错误。随机访问迭代器(vector和deque提供的迭代器类型)提供了表单
的复合赋值iter += n
iter -= n
参见例如http://www.cplusplus.com/reference/std/iterator/RandomAccessIterator/
当您查看结果类型时,Lippman写的形式的复合赋值没有意义。