C++ string 常用函数
一,类型别名
size_type
无符号整型
iterator
迭代器类型
const_iterator
只读迭代器
reverse_iterator
逆序迭代器
const_reverse_iterator
只读逆序迭代器
different_type
足以存储两个迭代器差值的有符号整型
value_type
元素类型
reference
元素左值类型,是value_type&的同义词
const_reference
元素常量左值类型,是const value_type&的同义词
二,构造函数
string s1;
默认构造函数
string s2(s1);
初始化为s1的副本
string s3(“value”);
初始化为字符串字面值的副本
string s4(n,’c’);
初始化为n个字符为’c’的副本
string s5(cp,n);
初始化为cp所指数组的前n个字符的副本
string s6(s1,pos);
初始化为s1从下标pos开始的字符的副本
string s7(s1,pos,len);
初始化为s1从下标pos开始长度为len个字符的副本
string s8(b,e);
初始化为迭代器b和e标记范围内的元素的副本
三,添加元素
s.push_back(‘t’);
尾部添加值为t的字符
s.insert(p,’t’);
迭代器p前面插入值为’t’的字符,返回指向新字符的迭代器
s.insert(p,n,’t’);
迭代器p前插入n个值为’t’的字符,返回void
s.insert(p,b,e);
迭代器p前插入由迭代器b和e标记范围的元素
s.insert(pos,n,’t’);
在下标pos前插入n个值为’t’的字符
s.insert(pos,s2);
在下标pos前插入string对象s2
s.insert(pos,s2,pos2,len);
在下标pos前插入s2从pos2下标开始的len个字符
s.insert(pos,cp,len);
在下表pos前插入cp所指数组的前len个字符
s.insert(pos,cp);
在下表pos前插入cp所指的以空字符结束的字符串
四,删除元素
s.erase(p);
删除迭代器p所指向的元素。返回指向被删元素后一个元素的迭代器
s.erase(b,e);
删除由迭代器b和e标记范围内的元素,返回指向被删元素段后一个元素的迭代器
s.pop_back();
删除最后一个元素。返回void。VS2010支持。
s.clear();
删除所有元素,返回void
五,长度大小
s.size();
返回s中元素个数,类型为size_type
s.max_size();
返回s中可容纳最多元素个数,类型为size_type
s.empty();
返回s中元素是否为0的布尔值
s.resize(n);
调整s的长度大小,使其能容纳n个元素
如果n