在RcppAlgos中,是否有用于检查迭代器是否为false的文档?
显示了一种从在RcppAlgos中,是否有用于检查迭代器是否为false的文档?,r,iterator,R,Iterator,显示了一种从RcppAlgos循环遍历迭代器直到其没有剩余迭代的方法。以下是相关部分: ## Initialize the iterator a = comboIter(5, 3) a$nextIter() iter = a$currIter() ## Iterate until there are no more while (!isFALSE(iter)) { cat(i, " ", iter, "\n") iter = a$nextIter() i = i +
RcppAlgos
循环遍历迭代器直到其没有剩余迭代的方法。以下是相关部分:
## Initialize the iterator
a = comboIter(5, 3)
a$nextIter()
iter = a$currIter()
## Iterate until there are no more
while (!isFALSE(iter)) {
cat(i, " ", iter, "\n")
iter = a$nextIter()
i = i + 1
}
while(!isFALSE(iter))
行是我感兴趣的。我一直在寻找comboIter
,但我看不到任何地方表明comboIter
可以接受真值或假值。显然,当迭代器对象的迭代次数已用完时,它可以执行,但此文档记录在哪里?正如注释所指出的,这是。目前,答案是“他们没有”。作为这个软件包的作者,我的意图是尽可能模仿STL中的std::next_permutation
和其他人。当迭代器完成时,它只返回FALSE
。与STL实现不同的是,当下一个迭代不是最后一个迭代时,它不会返回TRUE
,而只是返回下一个组合。这就是为什么示例使用基本R函数isFALSE
。isFALSE
的行为是仅当所评估的值是逻辑值时才返回TRUE
,否则返回FALSE
。要回答“此文档在哪里?”。。。我搜索了所有的资源,认为“当然,我记录了这个…”结果什么都没有。最后,这与Rcpp
本身无关,只是一个使用Rcpp
@JosephWood的软件包的作者忽略了一点。好吧,就这样解决了!顺便说一句,很棒的套餐。我很感谢您的反馈,我对此表示欢迎。虽然这个问题对堆栈溢出没有问题,但最好向维护人员提出如下问题: