小编Udo*_*rth的帖子

如何使用 rust bindgen 生成的 std_vector

我有一个外部 C++ 库,我想从 rust 中使用它。为此,我使用 bindgen 来映射函数调用。我想要使​​用的 C++ 函数填充 (C++) 字符串向量并具有签名:

short REQ_MList(std::vector<std::string> *list)
Run Code Online (Sandbox Code Playgroud)

Bindgen 生成 Rust 函数:

pub fn REQ_MList(list: *mut std_vector) -> ::std::os::raw::c_short
Run Code Online (Sandbox Code Playgroud)

现在我不知道如何处理这个数据类型std_vector。

我尝试生成 std​​_vector 结构并提供指向它的原始指针,该指针可以编译但(当然)失败。

let mut list=std_vector{_Mypair: (0)};
let list_ptr:*mut std_vector= &mut list;
REQ_MList(listptr);
Run Code Online (Sandbox Code Playgroud)

处理此 C++ 数据类型的正确方法是什么?我还没有找到任何关于这个主题的文档。

c++ vector rust rust-bindgen

2
推荐指数
1
解决办法
405
查看次数

标签 统计

c++ ×1

rust ×1

rust-bindgen ×1

vector ×1