gpt4 book ai didi

python - pybind11::array_t 是否有(深)复制构造函数?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:38:34 28 4
gpt4 key购买 nike

我有一个现有的 pybind11::array_t,需要进行复制构造。 pybind11 中是否有一个函数允许我对 array_t 进行深度复制?

我知道我可以创建一个新的 array_t,适当调整大小,然后将原始数据复制到其中,但想知道是否已经存在隐藏这些段落的方法。

最佳答案

默认复制构造函数执行深复制,people are actually trying to avoid this :)

要使用复制构造函数,可以通过buffer

using py_arr = pybind11::array_t<double>;
py_arr a;

// do stuff with a, fill it and everything...

auto buffer = a.request();
py_arr b = py_arr(buffer);

std::cout << b.data() << " " << a.data() << std::endl; // this won't return the same address twice

关于python - pybind11::array_t 是否有(深)复制构造函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56575285/

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