Function 按Rust中的值返回大型结构的权衡与C类似吗?
在C语言中,最好将指针传递给更大的结构 按值返回的示例:Function 按Rust中的值返回大型结构的权衡与C类似吗?,function,struct,rust,Function,Struct,Rust,在C语言中,最好将指针传递给更大的结构 按值返回的示例: typedef struct LargeStruct { char data[512]; } LargeStruct; /* snip */ void some_function() { for (int i = 0; i < total; ++i) { LargeStruct value = some_other_function(); /* use 'value' */
typedef struct LargeStruct {
char data[512];
} LargeStruct;
/* snip */
void some_function() {
for (int i = 0; i < total; ++i) {
LargeStruct value = some_other_function();
/* use 'value' */
}
}
typedef结构大结构{
字符数据[512];
}大结构;
/*剪断*/
使某些函数无效(){
对于(int i=0;i
在这种情况下,通常最好将指针传递给结构。例如:
for (int i = 0; i < total; ++i) {
LargeStruct value;
some_other_function(&value);
/* use 'value' */
}
for(int i=0;i
。。。因此,每个函数调用不必复制结构
我的问题是:这是否也适用于锈蚀
返回值的处理方式是否与C不同,因此无需传递返回参数?也与此相关: