C++ 迭代器运算符定义

标签 c++ iterator overloading operator-keyword

关于迭代器运算符必须如何工作的“定义”的任何想法或链接?更确切地说:例如,运算符“==”和“!=”必须如何执行——它们是否必须比较它们持有的数据的成员(恕我直言,这将是一个问题,因为迭代器不应该首先知道数据)?你如何比较 .end() 和 .start()?对于指针迭代器:它只是一个地址检查吗?

很高兴听到您的想法或获得定义的链接。

最佳答案

我认为您需要阅读以下内容:http://stdcxx.apache.org/doc/stdlibref/iterators.html

运算符 ==!= 比较迭代器,而不是它们引用的数据。

关于C++ 迭代器运算符定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8474396/

相关文章:

java - 使用 hasNext() 和 next() 遍历异步生成的元素流

design-patterns - 什么时候使用工厂模式而不是重载的构造函数来实例化对象更有意义?

c++ - 如果仅声明复制构造函数,如何创建第一个对象?

c++ - 带有 std::thread 和 this 的 ctor 初始值设定项列表

c++ - 这是一个单数迭代器吗?如果是,我可以将它与另一个迭代器进行比较吗?

c++ - 在迭代 C++ 容器时进行修改的通用解决方案?

java - 在 Java 中重载/覆盖

typescript - 泛型类的可选方法参数的类型

c++ - 函数重载不起作用

c++ - 在类语法帮助中比较对象;