铁锈包含两个相同的(按api)的vec模块:
http://doc.rust-lang.org/std/vec/index.html
http://doc.rust-lang.org/collections/vec/index.html
有什么不同吗?哪一种更适合使用?
发布于 2014-12-22 06:25:21
collections机箱一般不打算直接使用;您应该使用std机箱。
std::vec只是重新导出collections::vec;它是完全相同的模块。
如果您想使用Vec,甚至不需要使用use导入它,因为它是prelude的一部分。序曲中定义的项总是隐式导入的。如果需要从该模块导入其他项,请编写use std::vec::X;而不是use collections::vec::X;。
为什么collections存在?它适用于那些编写不运行在操作系统上的Rust应用程序或操作系统的应用程序的人。std提供了一些依赖于操作系统的特性,但是std的某些部分没有;这些部分被分割成更小的板条箱,可以更容易地重用。然而,在不久的将来,这些板条箱不会稳定下来,而对于RUST1.0来说,std将是稳定的,所以除非您真的需要避免std,否则只需要使用std。
您可以通过向机箱根添加std来告诉编译器,您不希望使用#![no_std]。
https://stackoverflow.com/questions/27597317
复制相似问题