Visual C++ mdspan

wnavrhmk  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(95)

我一直在屏息等待微软发布他们的C++23 std::mdspan的实现。它今天在V19 Preview 1中发布。我试图尝试它,但它似乎不起作用。下面是我的代码:

std::vector<double> Bdat(dfcts.ndf * vbs.nvb);     // allocate the space
    using Dext = std::dextents<size_t, 2>;
    std::mdspan<double, Dext> B{ Bdat.data(), dfcts.ndf, vbs.nvb};    // create the mdspan
    B[0, 0] = 1.0;

字符串
最后一行给出了一个错误:“no operator“[]”匹配这些操作数。请告诉我我犯了一个明显的语法错误。我真的不想听到我可以创建一个mdspan但不能使用它。

kqlmhetl

kqlmhetl1#

MSVC当前不支持多维operator[]功能,您可能需要使用另一个接受arrayspan的重载才能实现此功能

B[std::array{0, 0}] = 1.0;

字符串

相关问题