zoukankan      html  css  js  c++  java
  • C++细节2

    在C++标准库中定义了内容丰富的抽象数据类型:string和vector,以及bitset。

    string类型输入操作符

    1、读取并忽略开头所有的空白操作符(空白,换行,制表符)

    2、读取字符直到再次遇到空白字符

    getline(std::cin, string)函数将istream作为返回值,string类型不含换行符。

    任何***.size()的返回类型都为***::size_type类型(与机器无关),不能将size的返回值赋给int型变量,下标最好也使用::size_type。


    所有的标准库容器都支持迭代器(iterator),只有少数部分的容器支持下标操作。


    区别const ***iterator和***const_iterator。

    前者迭代器不能改变,迭代器所指向的值能改变;后者迭代器能改变,迭代器指向的数值不能改变。


    bitset

    存储二进制位的有序集,每个位置可能包含0或1,头文件<bitset>。不是标准模板库。

    必须初始化个数

    1、用unsigned值初始化,将值转为二进制的位模式。bitset对象中的位集作为其副本。若bitset的长度大于unsigned long 值的二进制位数时,其余的高阶位置为0,;若小于~,则只使用其低阶位。

    2、string对象初始化时,string对象直接表示为位模式。顺序从右向左。

    3、返回类型和下标操作为size_t。

  • 相关阅读:
    【CF932E】Team Work
    【ZJOI2011】看电影
    【CQOI2011】放棋子
    【HAOI2010】计数
    【HNOI2009】有趣的数列
    【ZJOI2010】排列计数
    【FJOI2016】建筑师
    【USACO10 OPEN】三角形计数
    【HNOI2012】排队
    【HNOI2008】越狱
  • 原文地址:https://www.cnblogs.com/zfluo/p/5131873.html
Copyright © 2011-2022 走看看