在Rust中填充结构向量的好方法是:
理想情况下
unsafeC等价物是:
struct MyStruct *create_mystruct(const uint n) {
struct MyStruct *vector = malloc(sizeof(*vector) * n);
for (uint i = 0; i < n; i++) {
/* any kind of initialization */
initialize_mystruct(&vector[i], i);
}
return vector;
}
Run Code Online (Sandbox Code Playgroud)
我正在移植一些C代码,它在一个简单的循环中填充一个数组,所以我想知道是否有一种乡村方式来执行这样一个零或至少最小开销的常见任务?
如果此代码的Rust版本通常需要一些额外的检查,那么最近的等价物是什么?