Rust 所有权转移在函数调用中的表现:编译期保证的零成本抽象函数调用是程序中最基本的抽象机制,但在传统语言中,参数传递的语义往往模糊不清——是拷贝值、传递引用、还是转移所有权?C++ 的值传递默认拷贝,可能隐藏昂贵的操作;Java 的引用传递让所有权语义不明确;Python 的对象引用在可变对象上容易出错。Rust 通过所有权系统在编译期明确参数传递的语义——非 Copy 类型默认转移所有权,原变量失效;Copy 类型拷贝值,两者独立;借用传递引用,保留所有权。这种显式性让函数的内存语义清晰可见——是否消费参数、是否需要可变访问、返回值的所有权归属。编译器静态检查