我正在使用优秀的range-v3库。我的一个函数返回一个ranges::view
我想与std::vector
. 当然,我可以逐个元素进行比较,但必须有更好的方法。
如何确定
ranges::view
object 和之间的等价性std::vector
?
我正在使用优秀的range-v3库。我的一个函数返回一个ranges::view
我想与std::vector
. 当然,我可以逐个元素进行比较,但必须有更好的方法。
如何确定
ranges::view
object 和之间的等价性std::vector
?
如果您想知道两个范围是否引用相等元素的序列,请将它们传递给ranges::equal
算法(DEMO):
int main() {
std::vector<int> vec{5,4,3,2,1,0};
assert(ranges::equal(vec, ranges::view::iota(0, 6) | ranges::view::reverse));
}