解决方法
做什么?问题出在哪里?我无法给出一个很好的例子,说明“如何让你的生活更轻松”,而无需解决问题.我所能做的就是向您展示该类如何在应用程序中工作的基础知识.
这是interface的链接.如果你想处理一个简单的,恒定大小的位组,那么你可以轻松制作一个.如果你想要一个可以增长或缩小的产品,请看Boost.这是一个标准bitset的简单示例:
std::bitset<40> imFiveBytesLong; imFiveBytesLong.set(0,true);
现在看起来像
0000000000000000000000000000000000000001
设置第0位.你可以通过询问来测试是否设置了该位:
bool isItSet = imFiveBytesLong.test(0);
或者您可以通过询问来计算设置位数:
std::size_t numSet = imFiveBytesLong.count();
编辑:
要回答下面的评论,请查看bitset的to_ulong方法和bitset的constructors之一.把它放在一起:
int main () { std::bitset<10> mySet(120ul); // initialize from unsigned long std::cout << mySet.to_uLong(); // print as an unsigned long return 0; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。