参考:C++字符串参考

元素访问

cout << str1[0] << endl;		// 第0个字符		h			访问指定字符,无边界检查
cout << str1.at(0) << endl;		// 第0个字符		h			访问指定字符,有边界检查
cout << str1.front() << endl;	// 首个字符		h			访问首字符
cout << str1.back() << endl;	// 末尾字符		d			访问尾字符
cout << str1.data() << endl;	// 本体			hello world	指向字符串首字符的指针

参考:[]和at()D的区别

迭代器

c.begin() 返回一个迭代器,它指向容器c的第一个元素

c.end() 返回一个迭代器,它指向容器c的最后一个元素的下一个位置

c.rbegin() 返回一个逆序迭代器,它指向容器c的最后一个元素

c.rend() 返回一个逆序迭代器,它指向容器c的第一个元素前面的位置

vector<int> v;
v.push_back(1);
v.push_back(2);
v.push_back(3);

// 输出:1 2 3
for (vector<int>::iterator it = v.begin(); it < v.end(); it++) {
	cout << (*it) << " ";
}

// 输出:3 2 1
for (vector<int>::reverse_iterator it = v.rbegin(); it < v.rend(); it++) {
	cout << (*it) << " ";
}

 容量