C++STL学习笔记02

string容器

1、string容器基本概念

string类本不是STL的容器,但是它与STL容器有着很多相似的操作,因此,把string放在这里一起进行介绍。string与c风格的字符串相比有以下特点:

  • char*是一个指针,而string是一个类,string封装了char*指针来管理这个字符串,是一个char*型的容器
  • string封装了很多实用的方法,如查找find(),拷贝copy(),删除delete(),替换replace(),插入insert()
  • string在使用过程中不用考虑内存的管理,不用担心越界与内存释放问题

2、string类常用操作示例

#include
#include
#include
#include

using namespace std;

void test01() {

	//构造
	string str1;//无参构造
	string str2("Tom");//有参构造初始化
	string str3(str2);//拷贝构造
	string str4(2, 'm');

	//赋值
	str1 = "Bob";//用char*给string赋值
	str3 = str2;//用string给string赋值
	string str5;
	str5.assign("acesf",3); //截取char*的前三个字符对其进行赋值
	string str6;
	str6.assign("abcdefgh",3,3);//从第3开始截取三个字符赋值

	//存取
	cout<0) {
		cout << "s4>s5" << endl;
	}
	else{
		cout << "s4v1;
	int start=0;
	int pos3 = 0;
	while (pos3 != -1) {
		pos3 = address.find(".",start);
		v1.push_back(address.substr(start, pos3-start));
		start = pos3 + 1;
	}
	for (vector::iterator it = v1.begin(); it < v1.end(); it++) {
		cout <<*it<< endl;
	}

	//插入删除
	s6.insert(1, "111");
	s6.erase(1, 3);

}

int main() {
	test01();
	return 0;
}

 

你可能感兴趣的:(C++学习笔记,c++)