首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

标准库部类-string,vector,bitset

2013-10-08 
标准库类型--string,vector,bitset标准库类型一.标准string类型string类型支持长度可变的字符串,C标准库将

标准库类型--string,vector,bitset
标准库类型

一.标准string类型

    string类型支持长度可变的字符串,C++标准库将负责管理与存储字符相关的内存,以及提供各种有用的操作。

1.1 string对象的定义和初始化

    当没有明确指定对象初始化时,系统将使用默认构造函数。

标准库部类-string,vector,bitset
       注意:编程时一定要注意区分字符串字面值string数据类型的使用。

1.2 string对象的读写

    1. string类型的输入操作符:

读取并忽略开头所有的空白字符(如空格、换行符、制表符)。读取字符直至再次遇到空白字符,读取终止。

     2.读入未知书目的string对象:


     1. string对象的长度指的是string对象中字符的个数,可以通过size操作获取。如s.size() ,返回s中字符的个数。

        如何判断string对象是否为空:



这些函数都在cctype头文件中定义。
    2.vector对象的操作
标准库部类-string,vector,bitset
使用size_type类型时,必须指出该类型是在哪里定义的,vector类型总是包括vector的元素类型:
   1、用unsigned值初始化bitset对象:該值将转换成二进制的位模式,如果bitset类型长度打印unsigned long值的二进制位数,其余的高阶位将置为0,而小于则只用unsigned值中的低阶位,将超过的高阶位丢弃。   2、用string对象初始化bitset对象:string对象直接表示为位模式,string对象和bitset对象之间是反向转化的,string对象的最右边字符用来初始化bitset对象的低阶位。             从string对象读入位集的顺序是从右向左

标准库部类-string,vector,bitset

      

1 bitset<32> bitvec;   // 32 bits , all zero2 size_t bits_set = bitvec.count(); //置为1的二进制位的个数3 size_t sz = bitvec.size(); // return 32

       count操作的返回类型时标准库中命为size_t的类型。size_t类型定义在cstddef头文件中。他是一个与机器相关的unsigned类型,大小足以保证存储内存中对象的大小。

   4.访问bitset对象中的位

    

// assign 1 to even numbered bitsfor(int index = 0 ; index != 32 ; index += 2)    bitvec[index] = 1;

   为了测试某个二进制位是否为1,可以用test操作或者测试下标操作符的返回值:

1 if(bitvec.test(i))2     //bitvec[i] is on3 4 // equivalent test using subscript5 if(bitvec[i])6     //bitvec[i] is on

      如果下标操作符测试的二进制位为1,则返回的测试值的结果为true,否则返回false。

1 bitvec.reset();  // set all the bits to 02 bitvec.set();     // set all the bits to 1

 

这篇博客也发在博客园:http://www.cnblogs.com/heyonggang/p/3259236.html

热点排行