问题标签 [iterator-range]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2036 浏览

c++ - 如何让迭代器进入 boost fusion map?

我正在尝试获取迭代器boost::fusion::map,但我错过了一些东西。

以下适用于boost::fusion::vector

输出:

我想做类似的事情,fusion::map但它无法编译:

我包括这些:

错误:

0 投票
1 回答
742 浏览

c++ - 查找失败时提升 string_algo 返回值

我想首先使用 boost::string_algo 的 find 找到一行中的第一个空格:

不过,我似乎在文档中找不到任何说明如果找不到空格会返回什么的内容。我需要针对 line.end() 或其他东西测试 token_range.end() 吗?

谢谢!

0 投票
1 回答
4294 浏览

c++ - 如何返回 iterator_range

我想创建并保留一个 iterator_range。范围是基于谓词构造的(对于本示例,我查找偶数)。

我可以这样做,但似乎我必须从正在迭代的底层向量中复制元素。

请在下面的示例中查找标记为“>>>”的注释。

有没有办法创建 iterator_range 而不必从原始向量创建条目的副本?

我看过,但还没有看到这种特殊情况的答案。

0 投票
1 回答
503 浏览

c++ - 返回变换迭代器范围的最佳方法

假设我想编写一个简单的函数keys,它接受 astd::map并返回iterator_range提供地图键的 an。我该怎么做?

我想将相同的模式应用于各种其他容器,但我认为这是一个很好的原型示例。

编辑:我猜我需要 Boostrange_adapter和/或transform_iterators 领域的东西,但我对它们不够熟悉,无法在这里应用它们。

0 投票
0 回答
272 浏览

c++ - C++ 范围迭代器算法收集结果

我编写了一个函数来收集提升迭代器范围的结果。这里是:

比较方便:

这似乎真的应该已经存在,但我找不到它。(更不用说以某种方式“推断”返回类型会很好,这更可能是标准实现中的一个特性。)

有谁知道这样的功能?

0 投票
1 回答
1132 浏览

c++ - 标记字符串并将结果存储在 boost::iterator_range

我需要标记 (' ','\n','\t' 作为分隔符) 与 somethink like

后来我想得到输出:

上面的例子产生了什么:

谢谢你的帮助。

0 投票
2 回答
1169 浏览

qt - 为什么像 QList 和 QVector 这样的 Qt 容器没有迭代器范围构造函数?

C++ 中的标准库容器具有采用迭代器范围的构造函数。当输入容器的内容可转换为但与结果容器中的内容不同,或者即使容器只是不同时,这很方便。构造函数重载允许这种类型的转换发生在周围类的构造函数中,从而减少代码中的混乱。

那么问题来了,为什么 Qt 容器没有这种过载?是疏忽还是这种笨拙的设计选择背后有原因?

0 投票
1 回答
48 浏览

c++ - 是否有适用于迭代器的数字解析功能?

C++ 或 Boost 中有没有办法解析直接在迭代器unsigned long long上工作的数字(如果可能) ?wstring它应该和std::stoull.

0 投票
4 回答
2207 浏览

c++ - 将单个参数传递给需要迭代器范围的函数

考虑一个接受一个或多个参数(例如文件名)的函数。为了使其具有通用性,将其编写为通用迭代器范围是有利的:

现在我们可以通过以下方式调用它,与我们如何存储参数无关:

例如,STL 严重依赖这种范式。

现在,假设我们想要使用未存储在容器中的单个参数调用该函数。我们当然可以写:

但是这个解决方案对我来说似乎很笨拙和浪费。

问题:是否有更好的低开销方法来创建单个变量的迭代器范围兼容表示?

0 投票
2 回答
382 浏览

c++ - 从成员函数返回 boost iterator_range

我正在尝试创建一个返回数组范围的成员函数,如下所示:

但它给出了以下错误:

这里可能有什么问题?在此先感谢您的帮助?