新手提问.迭代器有关问题

新手提问...迭代器问题vector int ::iteratormid(vi.begin()+vi.end())/2这种用法我知道是错的,但书上

新手提问...迭代器问题
vector <int> ::iterator   mid=(vi.begin()+vi.end())/2
这种用法我知道是错的,但书上给的原因是   迭代器相加操作是未定义的...翻了一下好象确实只有减法操作     iter1-iter2
但iter1+=iter2   这个是怎么回事...

[解决办法]
iter1-iter2是2个迭代器对象的距离,正负皆可

iter1+iter2当然什么都不是