C++ Primer 读书笔记 – 第三章
来源:互联网 发布:软件开发网校 编辑:程序博客网 时间:2024/05/16 04:57
C++ Primer 读书笔记 – 第三章
第3章 标准库类型
⒊⒌ 标准库bitset类型
[以下下标和位数均为 size_t 型(定义在头文件 cstddef 中, unsigned 整型)]
⒈ bitset 是一种类模板,用于保存位集,并提供测位和置位操作
⒉ 定义和初始化
bitset 在定义时需要以常量表达式的形式提供位数N
初始化时参数提供位数不足则剩余高阶位置为0,位数过多则抛弃多余高阶位
⑴ bitset<N> b;
默认构造函数置各位为0
⑵ bitset<N> b( unsigned long u );
使用 unsigned long 值u的二进制形式初始化
⑶ bitset<N> b( string s, size_t pos=0 );
bitset<N> b( string s, size_t pos, size_t m );
使用 string 对象s或其(下标pos起到结尾或长度为m的)子串初始化
(子)串最右端对应低阶(low-order)位,向左依次类推
⒊ 操作
除支持所有内置位运算符以及==和!=外,还支持以下操作:
⑴ 访问整个 bitset 对象
① bool any();
返回是否各位不全为0
② bool none();
返回是否各位全为0
③ size_t count();
返回为1的位的个数
④ size_t size();
返回能容纳的位数
⑵ 访问 bitset 对象中的位
(从低阶位起,各位编号依次为 0, 1, 2, 3 …)
① 下标操作符[]返回指定位的引用
② bool test( size_t pos );
返回指定位的值
③ bitset<N>& set( size_t pos, int val=1 );
设定指定位的值并返回对象的引用
④ bitset<N>& reset( size_t pos );
清零指定位并返回对象的引用
⑤ bitset<N>& flip( size_t pos );
取反特定位并返回对象的引用
也可以b[pos].flip(),返回指定位的引用
⑶ 设置整个 bitset 对象
① bitset<N>& set();
置所有位为1并返回对象的引用
② bitset<N>& reset();
清零所有位并返回对象的引用
③ bitset<N>& flip();
取反所有位并返回对象的引用
⑷ 获取 bitset 对象的值
① unsigned long to_ulong();
返回位模式相同的 unsigned long 值
若越界则产生运行时异常
② string to_string();
返回字符串形式
③ 可使用输出操作符打印 bitset 对象
- C++Primer再读读书笔记:第三章
- C++Primer读书笔记(第三章)
- C++Primer读书笔记第三章(上)
- C++Primer读书笔记第三章(下)
- C++ Primer 读书笔记 – 第三章
- C++ Primer 读书笔记 – 第三章
- C++ Primer 读书笔记 – 第三章
- C++primer 第三章
- C++primer 第三章
- C Primer读书笔记第二章
- c++primer第十二章读书笔记
- 《C++ Primer》读书笔记 第三章 vector、iterator
- 《C++ Primer》读书笔记-第三章 04 迭代器
- 《C++ Primer》读书笔记-第三章 05 数组
- C Primer Plus 第三章
- C++Primer第三章习题
- C Primer Plus 第三章
- C++primer第三章笔记
- leetcode--Count and Say
- C++ Pirmer 读书笔记-第二章
- ubuntu 设置网络
- Renginx服务器basePath路径问题如何解决
- Fragment
- C++ Primer 读书笔记 – 第三章
- with grant option与with admin option区别
- 结构体内存对齐规则
- linux 系统监控、诊断工具之 IO wait
- 第4章 数组和指针
- hdu3938 Portal
- Image以透明度的变化消失
- 子div块中设置margin-top时影响父div块位置的解决办法及其原因
- C++ Primer 读书笔记 – 第五章