string类

1、需包含的命令

# include<string>

using namespace std;

构造类函数

1、构造字符串

<1>构造一个空的字符串对象-------------------------------string s1

<2>创建一个str副本----------------------------------------string s2("SAFDSGDS");

<3>创建str中从pos开始长度为npos的子对象--------------string s4(s1,9,8);

<4>创建str中前n个字符的子序列---------------------------string("sadfdsgssd",4); 或 string(s1,5);

<5>创建一个字符串对象,其值为指针s指向的字符串---------char *p = "dfsd";string s2(p);

<6>创建一个长度为n字符为c的子序列----------------------string s6(10,'C');

<7>创建一个由start和end迭代器指定的字符 集的字符串对象---------string s8(s1.begin(),si.begin()+8) 

2、operator=函数-------------------s1 = s2;  或  s1='A';

3、+ 运算符函数-------------作用是将rns连接在lns 后面    rns+lns

4、==  != < > <= >= 比较函数-------------------式子成立返回true  不成立 返回false

5、[]运算符---------------返回string中某一位置对应的字符--------s[0]、s[1]

6、at函数--------作用与[]函数一样,只是会自动检查是否越界,不越界返回对应字符,越界抛出异常--------s.at(1);

迭代器函数--begin、end、rbegin、rend

容量类函数--size和length、max_size、resize、empty

1、reverse-----作用是请求为string对象预留大小为res_arg的内存空间-----------s.reverse(25);

2、capacit函数-------作用是返回分配的存储空间大小----s.capacity();---------------系统分配的存储空间大于等于字符串长度

操作类函数

1、insert函数

迭代器的声明:   string::iterator it;

<1>第一个函数的作用是在当前字符串对象的第pos1位置上插入字符串str---------s.insert()

<2>第二个函数的作用是在当前字符串对象的第pos1位置插入字符串str的一部分,插入的部分从str的第pos2位置开始的n个字符

<3>第三个函数的作用是在当前字符串对象的第pos1位置插入字符串s的前n个字符

<4>第四个函数的作用是在当前字符串对象的第pos1位置插入字符串s

<5>第五个函数的作用是在当前字符串对象的第pos1位置插入n个字符c

<6>第六个函数的作用是在当前字符串对象的迭代器p指向的位置插入字符c

<7>第七个函数的作用是在当前字符串对象的迭代器p指向的位置插入n个字符c

<8>第八个函数的作用是在当前字符串对象的迭代器p指向的位置插入部分字符,这些字符从迭代器first开始到迭代器last结束

原文地址:https://www.cnblogs.com/wshyj/p/6277572.html