(十七)标准库特殊设施

tuple,当我们希望将一些数据组合成单一对象,但又不想麻烦的定义一个新数据结构来表示这些数据时,使用tuple,简易struct?

tuple<int,int,int> three{1,2,3};//是explicit,所以不能使用 = {1,2,3};

auto item = make_tuple(1,"abc",5.0);

//成员是未命名的,所以需要使用get标准库函数模板
auto a = get<0>(item);
auto str = get<1>(item);

//这样似乎不好,未命名并且获取方式导致程序难读.

使用tuple返回多个值,清晰比简单重要,所以应该使用具体的struct或class,不要怕麻烦.


bitset

固定大小

bitset<32> bitvar(1u);//32位

bitset<32> bitst("1100");


正则表达式

是一种极其强大的工具,但是效率~

正则表达式的语法是否正确时在运行时解析的.


随机数

头文件:<random>

随机数引擎类:生成原始随机数,有几种不同的方法产生

随机数分布类:对随机数作分布,例如范围,分布等

均匀分布,伯努利分布,泊松分布,正态分布,抽样分布

uniform_int_distribution<unsigned> u(0,9);//分布器
default_random_engine e(1);//默认生成引擎,指定种子

e(u);//生成对应分布的随机数


IO库操纵符

endl

boolalpha,控制布尔值格式

oct,hex,dec,指定整型值的进制

shoubase 等.

输出补白,setw,left,right,internal,setfill

未格式化操作

is.get


流随机访问

seek,tell






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值