3. 标准库类型
来源:互联网 发布:golang java性能对比 编辑:程序博客网 时间:2024/05/29 20:01
用#include包含文件时,相当于头文件中的文本将成为我们编写文件的一部分;放置using声明,相当于在包含该头文件的每个程序中都放置了同一using声明。
string类型
- string::size() 返回类型是unsignd型的string::size_type,为了配套类型使使用与机器无关。因为有些机器的上的int变量的表示范围太少。因此,不要把size的返回值赋给一个int变量;
- string类型比较区分大小写,大写字母位于小写字母前,so大写字母小于任意的小写字母;
- string的比较采用字典排序相同策略,即比较两个字符串第一个不匹配的字符。
- string = 赋值是深拷贝;
- string + 的左右操作数必须至少有一个是string类型的。
如:string str = “he” + “llo”; //error - 取string中字符直接string[i]即可
vector类型 – 管理同一类型的对象集合
- vector不是一种数据类型,而只是一个类模板;
- C++程序员习惯于!=而不是<来编写循环判断条件;length长度时不是先将size保存到某一变量中,而是直接用size(),因为如果vector在循环中增加元素,则size会变,而直接保存到某一变量中就不合理了;
- vector中不要用vector[i] = t,给vector某一元素赋值来增加一个元素(增加元素只能用push_back(t));vector[i]只能提取确实已经存在的元素;
迭代器iterator – 访问vector元素的数据类型
- vector::iterator iter; //vector应该指定模板类型, 迭代中的元素类型为int型
- 使用 *iter(解引用操作符) 来去迭代器中的每一个元素,可以iter++来指向下一个元素
- 可以用==和!=比较两个迭代器;
- const_iterator 迭代器中不能改变每个元素的值。 而const iterator不能改变迭代器变量(即不能进行iter++操作,因为iter是const的)
- 可以用iter +- n来访问迭代器iter的前n个或后n个元素; iter1 - iter2计算迭代器的距离,但它们必须为同一种迭代器类型。
bitset类型 – 二进制位的有序集,赴南方0/1(yes/no, on/off)
- bitset<32> bitvec; // <>中必须为常量
- 初始化方法可以为
- bitset b; b有n位,每位都为0;
- bitset b(u); b是unsigned long类型;
- bitset b(s); b是string类型;
- bitset b(s, pos, n); b是string从位置pos开始的n个位的副本;string对象和bitset对象之间是反向转化的,即string右边元素在bitset对象的低阶位
- biset b(s, pos); b是string从位置pos到末尾的元素的副本。
- 还提供相应的函数访问和判断某位的值是0还是1.
0 0
- 3. 标准库类型
- 标准库类型bitset类型
- bitset类型, 标准库类型
- 标准库vector类型
- 标准库bitset类型
- Lesson2标准库类型
- IO标准库类型
- 标准库类型
- 标准库vector类型
- 标准库类型
- 标准库String类型
- 标准库bitset类型
- c++标准库类型
- C++标准库类型
- C++标准库类型
- 标准库vector类型
- 标准库string类型
- 标准库string类型
- 【Petuum 源码解析】之K-Means分布式算法源码
- python中的reduce函数
- Direct2D Intro - Clip a Bitmap Source
- 聚合数据API用法简介
- CAS配置二-通过数据库进行登录验证
- 3. 标准库类型
- 1.设备驱动基础
- 基于spark mllib的LDA模型训练源码解析
- SD卡的特点和背景知识
- 关于使用Hibernate注解的时候遇到的问题
- Libnids详解
- Xcode使用介绍之六:常用快捷键
- Direct2D Intro - Flip and Rotate a Bitmap Source
- Aizu 2249 Road Construction【最短路变形】