我很好奇这两个模块在实践中是否有区别?如果没有,为什么会有这两个副本呢?
std::rc::Rc
只是再出口alloc::rc::Rc
。你可以看到在src/std/lib.rs https://doc.rust-lang.org/nightly/src/std/lib.rs.html#188那整个rc
模块被重新导出:pub use alloc::rc;
The alloc
crate 适用于任何类型的内存分配。引用计数、盒装、原始分配和对底层分配器的一般访问(通常jemalloc
在铁锈中)。自从Rc
type 是一种很常见的类型,它应该存在于标准库中,但是alloc
crate 不应该是标准库的一部分,而只是rc
的模块alloc
被重新导出到标准库。这使得用户不必关心alloc
crate,而是提供一个干净的标准库,没有奇怪的东西,这些东西很容易使用起来不舒服。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)