小编Art*_*sev的帖子

从C ++ std :: vector <float>转换为Rust Vec <f32>的最佳方法是什么?

我编写了一个测试程序,以检查是否可以在Rust上正确读取数据。

C ++代码:

std::vector<float> vec;
vec.push_back(10);
vec.push_back(20);
std::cout << "len is " << get_len(&vec);
Run Code Online (Sandbox Code Playgroud)

锈代码:

std::vector<float> vec;
vec.push_back(10);
vec.push_back(20);
std::cout << "len is " << get_len(&vec);
Run Code Online (Sandbox Code Playgroud)

我的输出看起来像这样,并且总是不同的:

#[no_mangle]
pub extern "C" fn get_len(vec: *const Vec<f32>) -> i32 {
    let vec= unsafe { &*vec};
    vec.len() as i32
}
Run Code Online (Sandbox Code Playgroud)

c++ rust

6
推荐指数
1
解决办法
276
查看次数

标签 统计

c++ ×1

rust ×1