gpt4 book ai didi

excel - 如何从 vba 使用 xtensor?

转载 作者:行者123 更新时间:2023-12-04 20:52:37 27 4
gpt4 key购买 nike

只需点击 xtensor,我喜欢它,我会尝试从 vba(excel)中使用它。
为了保持这个“测试”简单,我打算只使用 double 矩阵,它们作为 LPSAFEARRAY 传递给 C/C++ dll。

  • 在 dll 中,使用接收到的 LPSAFEARRAY 构建一维适配器,
    使用数据指针和大小(行 x 列)。我认为这是
    足够了,用于映射操作。
  • 棘手的部分是如果我需要矩阵,主要担心的是
    数据以 fortran(列优先)顺序传输。我没有找到
    任何 2D 适配器,所以我的猜测是我必须转换上面的 1D
    适配器:
    a) reshape it, to (columns, rows)

    b) transposed view of a)

  • 以上是正确的,还是有更简单、更直接的方法?

    这种访问数据的方法是否存在速度损失?

    最佳答案

    您可以通过调整函数将一维数组直接调整为具有所需布局的 N 维容器:

    double* data = get_data_buffer();
    auto adapter = xt::adapt<xt::layout_type::column_major>(data, {rows, columns});

    adapt documentation更多细节。

    关于excel - 如何从 vba 使用 xtensor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54822734/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com