[英]What is the difference between &vector[0] and vector.begin()?
[英]What does it - vector.begin() actually do?
因此,根据我学到的在向量中获取迭代器的 position 的知识,我们这样做:
it - vector.begin();
有人可以解释这个减号“实际上”的作用吗?
大概vector
是std::vector
的一个实例, it
是该容器元素的迭代器。
给定两个相同范围的随机访问迭代器,从另一个中减去一个会导致一个元素到其兄弟元素的距离。 结果与从另一个元素的索引中减去一个元素的索引相同。
距离就像数字线一样:从低指数到高指数的距离是负数。
begin
返回一个指向容器第一个元素的迭代器。 第一个元素的索引为 0。因此,从另一个迭代器中减去 begin 迭代器会导致另一个迭代器与开头的距离,这与迭代器指向的元素的索引相同。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.