在Rust中使用位数组的正确方法是什么?

Ver*_*tti 4 bitarray rust

我需要一个功能与vector<bool>C++ 相同的类.Rust文档说明了BitVec,但在编译期间use std::collections::BitVec导致未解决的导入错误.根据拉动请求,BitVec已被删除.有没有足够的替代品?

Luk*_*odt 14

标准库中不存在专用的位向量,并且Vec<bool>不像C++那样专门vector<bool>.Rust提倡使用外部板条箱而不是构建一个巨大的标准库.这个用例的事实上的箱子是bit-vec.

您似乎找到了旧标准库文档的链接:https://doc.rust-lang.org/1.2.0/std/collections/struct.BitVec.html.请注意1.2.0网址!当前版本的Rust是1.25(截至2018年4月),这意味着1.2已经超过两年了.除此之外,BitVec1.2文档中标记为不稳定; 它被删除了.

  • 还有一个名称令人困惑的“bitvec”板条箱,我发现它更有功能。https://docs.rs/bitvec (4认同)
  • *`vec <bool>`不像C++的`vector <bool>`*那样专业 - 谢天谢地.这不是一个很好的决定:让我们有一个"矢量"*表现不同*. (3认同)
  • 提醒一下:这个箱子“处于维护模式,由于维护者资源不足” (2认同)
  • 恕我直言,更喜欢随机的板条箱而不是全面的(和策划的)标准库是在浪费任何人的时间。移动目标。板条箱的流行和失宠...在 Common Lisp 中,我有开箱即用的位向量,我不需要进行寻宝游戏... (2认同)