c++20范围库,如何使条件运算符工作?

为标题道歉,如果我知道如何更好地表达它,那么谷歌可能已经帮助了我......

我想要一个对象 Y,它代表容器 X 的视图,这样当我迭代 Y 时,它是 X 的向前或向后迭代。我想在不复制数据的情况下进行,因此新ranges库出现记在心里。

std::vector x{};
auto z = some_condition ? x : (x | std::views::reverse);

显然,x和的类型(x|...)是不同的。我怎样才能使它们一致?

编辑:刚刚发现10 年前提出的以下问题,我想我想知道的是,ranges现在让事情变得更容易了吗?由于该解决方案仍然需要将 for 循环逻辑放入单独的函数或 lambda 中。

以上是c++20范围库,如何使条件运算符工作?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>