如何使用xt::repeat?

How to use xt::repeat?

我想以与 numpy 相同的方式获取重复数组,但 xt::repeat returns 表达式。当我尝试将此表达式转换为数组时,出现编译错误。

xt::array<int> a = {{1, 2}, {3, 4}};
auto r = xt::repeat(a, 3, 1); // r is expression
xt::array<int> b = r; // compile error here

如何重复数组并将结果作为另一个数组而不是表达式?也许我在文档中遗漏了一些东西,但我找不到工作示例。

这是 xtensor 中的错误。我正在开发补丁,现在您可以使用以下解决方法:

xt::xarray<int> b(r.shape());
std::copy(r.cbegin(), r.cend(), b.begin());