C Primer plus 书中的问题?

vector::iterator is = ivec.begin(), ie = ivec.end();
ie+=is;
这两个指向同一个vector对象的迭代器相加减的复合赋值操作为什么编译不通过?是书中的内容错了,还是编译器的问题。

报什么错,你的分号是全角的。

两个来自同一个容器 iterator 可以相减,不能相加

两个迭代器之间不能进行“+”操作。
就和两个指针不能进行“+”操作一样。