范围视图的变异元素

时间:2019-03-01 15:32:14

标签: c++ range-v3

我有一个枚举std::vector<std::vector<enum>>的二维向量,该枚举可以具有值a (0), b (1), c(2)。我想将a之一随机设置为c,并认为我会尝试使用ranges库。

目前,我可以使用以下方法查看2d向量中的所有a

auto g = view::join(vec) | filter([](my_enum x){ return x == my_enum::a; };

我发现view::sample听起来对随机选择一个元素很有用,但是由于我对其需要作为参数的另一个范围的大小感到困惑,所以不知道如何使用它? (view::sample doc)

下一步也将是对随机选择的元素进行突变。据我了解,ranges::v3::view仅提供元素的非可变视图。那么,是否有可能对选定的元素进行变异?

0 个答案:

没有答案