Jon*_*Jon 22 c++ iterator stl
我知道这可能是一个愚蠢的问题..我什么时候需要编写自己的迭代器?是在设计我自己的容器类时吗?还有其他什么时候我想创建自己的迭代器吗?
例子将被挪用.
-Jon
Jer*_*fin 7
是的,还有其他时间.举几个例子:
jal*_*alf 5
任何时候您需要迭代一系列数据,并且尚未定义符合您需求的迭代器.
通常,您使用迭代器来遍历容器,但这远远不是唯一的用途.
迭代器也可以遍历数据库查询的结果,或从流输入读取(std::istream_iterator并std::istreambuf_iterator已经做到这一点,不过),或者你需要一个特殊的遍历顺序或战略.也许你想迭代"这个向量的每个成员,其索引可以被4整除",或者"这个字符串中的每个大写字母",或者你能想到的任何其他东西.
std::istream_iterator
std::istreambuf_iterator
Kir*_*sky 2
您需要为自己的容器类编写自己的迭代器,或者如果您在迭代标准容器时需要非标准行为。
归档时间:
15 年,7 月 前
查看次数:
1384 次
最近记录: