第三章 字符串、向量和数组
命名空间
使用using std::cin 从命名空间std中获取cin,其他cout、endl、vector、string同理
不要写在头文件,头文件会被到处引用
标准库string
初始化方式:拷贝初始化(“string a = “nihao””,用了中间量)和直接初始化(“string b(3,“nihao”)”)
字符串字面值和string是不同类型
范围for(range for)语句处理string对象里的字符:
for (declaration : expression)
statement
vector类型相同的对象的集合,也称为容器(container),需要头文件#include <vector>,是类模板(根据模板创建类或函数的过程成为实例化)
int容器和string容器初始化有区别:
vector<int> v1(10) //10个0
vector<int> v1{10} //1个10,列表初始化
vector<int> v1(10, 1) //10个1
vector<int> v1{10, 1} //10, 1,列表初始化
vector<string> v2(“hi”) //错误,不能使用字符串字面值构建vector对象
vector<string> v2{10} //10个默认初始化的元素
vector<string> v2{“hi”} //1个hi,列表初始化
vector<string> v2{10, “hi”} //10个hi
向vector对象中添加元素:push_back(****) //不能通过下标添加因为还不存在
迭代器
所有标准库容器都可以使用迭代器,严格来说string对象。。。但是。。。
begin和end成员返回指向第一个和尾元素的下一个
*执行解引用
#############
数组未完
#############