从std :: unique_ptr数组中获取原始指针数组

Jam*_*nus 2 c++ arrays smart-pointers

我有一个库函数,需要一个四个指针的数组作为参数:f(unsigned char* data[4]),我的代码中有一个智能指针数组:std::unique_ptr<unsigned char> myArray[4].

有没有办法使用智能指针与此库函数?

我已经尝试了这个,但它给了我一个段错误: f(reinterpret_cast<unsigned char **>(myArray[0].get()));

Yak*_*ont 6

std::array<unsigned char* , 4> arr = { myArray[0].get(),myArray[1].get(),myArray[2].get(),myArray[3].get() };
Run Code Online (Sandbox Code Playgroud)

通过arr.data().