使用clone_from_slice而不是copy_from_slice会降低性能吗?

问题描述

在Rust中,有两种方法可以从另一个切片更新切片的内容:clone_from_slice()copy_from_slice()。这两个函数的行为并不令人惊讶-第一个函数进行克隆并期望该类型实现Clone,而第二个函数进行复制并期望该类型实现Copy

但是,clone_from_slice的文档如此说:“如果T实现了Copy,那么使用copy_from_slice的性能会更高。”令人惊讶的是,这里应该存在性能差异。如果T实现Copy,则要求.clone()等同于复制位;但是,由于编译器知道T是什么类型,因此即使我使用clone_from_slice,它也应该能够确定是否可以按位进行复制。

那么效率低下的原因何在?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)