一、string特性
string是STL的字符串类型,通常用来表示字符串。而在使用string之前,字符串通常是用char表示的,string与char都可以用来表示字符串。
说到string的特性,就不得不和char类型的字符串对比:
1、char是一个指针,string是一个类
string封装了char*,管理这个字符串,是一个char型的容器。
2、string封装了很多实用的成员方法
查找find,拷贝copy,删除delete,替换replace,插入insert
3、不用考虑内存释放和越界
string管理char所分配的内存,每一次string的复制,取值都由string类负责维护,不用担心复制越界和取值越界等。
4、string和char可以相互转换,string转char通过string提供的c_str()方法。
//string转char*
string str=“abcdefg”;
const char* cstr=str.c_str();
//char*转string
char* s=“abcdefg”;
string sstr(s);
二、string容器的初始化、拼接、赋值、查找、替换、比较、子串、插入和删除
#include<iostream>
#include<string>
using namespace std;
///1-初始化
void test01() {
string s1;//调用无参构造
string s2(10, 'a');
string s3("abcdefg");
string s4(s3);//拷贝构造
cout << s1 << endl;
cout << s2 << endl;
cout << s3 << endl;
cout << s4 << endl;