Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';s比较<&燃气轮机;比较随机访问迭代器时,如c+中的向量+;? 比较C++、_C++_Iterator - Fatal编程技术网

什么';s比较<&燃气轮机;比较随机访问迭代器时,如c+中的向量+;? 比较C++、

什么';s比较<&燃气轮机;比较随机访问迭代器时,如c+中的向量+;? 比较C++、,c++,iterator,C++,Iterator,中的随机存取迭代器,如 STD::向量< /代码>时,比较< >代码> >代码>的内容是什么? 它比较指针地址还是指针内容 为什么其他迭代器类型不支持,而支持=?通常,所有随机访问迭代器都支持关系比较,因为对它们来说,这种比较可以轻松、立即和高效地进行评估 随机访问迭代器的关系比较不比较“指针地址或指针内容”。(顺便说一句,你说的是什么指针?)。容器元素越靠近容器的开头,对应的迭代器在关系比较运算符看来就越“小”。可以把它看作是比较迭代器引用的容器元素的索引。如何在内部实现这种比较是一个实现细

中的随机存取迭代器,如<代码> STD::向量< /代码>时,比较< <代码> >代码> >代码>的内容是什么? 它比较指针地址还是指针内容


为什么其他迭代器类型不支持
,而支持
=

通常,所有随机访问迭代器都支持关系比较,因为对它们来说,这种比较可以轻松、立即和高效地进行评估

随机访问迭代器的关系比较不比较“指针地址或指针内容”。(顺便说一句,你说的是什么指针?)。容器元素越靠近容器的开头,对应的迭代器在关系比较运算符看来就越“小”。可以把它看作是比较迭代器引用的容器元素的索引。如何在内部实现这种比较是一个实现细节。在
std::vector
的情况下,通常归结为指针比较。在og
std::deque
的情况下,它将更加复杂,但仍然非常有效


同样的逻辑可以应用于非随机访问迭代器,这意味着非随机访问迭代器也可以被视为按照相同的原则排序。但对于非随机访问迭代器,通常没有有效的即时方法来确定哪个“大”,哪个“小”。不可能立即说出哪个迭代器指向非随机可访问容器中的早期元素。这就是此类迭代器不支持关系比较运算符的原因。

什么是“比较内容”?我的意思是在比较迭代器时如何理解?<>非常类似于比较两个指针。其他的不是连续的,所以没有意义