[关闭]
@rihkddd 2014-12-22T13:38:34.000000Z 字数 1101 阅读 828

C++ primer 读书笔记 3

读书笔记 C++


第三章

3.1 命名空间的using声明

using namespace std;

3.2 标准库类型string

string 表示可变长的字符序列,使用string类型必须包含string头文件。string 定义在命名空间std里面。

3.2.1 定义和初始化string对象

3.2.2 string对象上的操作

操作 含义
os << s 将s写到输出流os当中,返回os
is >> s 从is中读取字符串赋给s,返回is
getline(is,s) 从is中读取一行赋给s,返回is
s.empty() s为空返回true,否则返回false
s.size() 返回s的长度
s[n]
s1+s2
s1=s2
s1==s2
s1!=s2
<,<=,>,>=

范围for语句:

  1. for (declaration: expression)
  2. statement

使用范围for语句输出一个string示例:

  1. string str("some string");
  2. for(auto c : str)
  3. cout << c << endl;

范围for语句中的引用可以改变绑定的对象!

  1. string str("some string to change")
  2. for (auto &c : str)
  3. c=toupper(c);
  4. cout<<str<<endl;

3.3 标准库类型vector

vector是存放相同类型的集合,也成为容器。vector是c++中的类模板,编译器根据模板创建类或函数的过程叫做实例化。使用vector时,需要指明vector内所存放对象的类型。

初始化形式 作用解释
vector v1 v1是一个空的vector
vector v2(v1) v2是v1的一个副本
vector v3=v1 等价上面的写法
vector v4(n,val) 包含n个重复的元素,每个元素的值都是val
vector v5(n) 包含n个初始化的值,这种写法会自动初始化对象T的默认初始化值
vector v6{a,b,c...} 初始化为相应的值(注意多个初始值进行初始化的时候一定要使用花括号)
vector v7={a,b,c...} 等价于上面的写法
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注