表头文件<string>定义了所有字符串型别和函数。
字符串中的操作函数
操作函数 | 效果 |
---|
=,assign() | 赋以新值 |
swap() | 交换两个字符串的内容 |
+=, append(),push_back() | 添加字符 |
insert() | 插入字符 |
erase() | 删除字符 |
clear() | 移除全部字符 |
resize() | 改变字符数量 |
replace() | 替换字符 |
+ | 串联字符串 |
==,!=,<,<=,>,>=,compare() | 比较字符串内容 |
size(),length() | 返回字符数量,等效函数 |
max_size() | 返回字符的最大可能个数 |
empty() | 判断字符串是否为空 |
capacity() | 返回重新分配之前的字符容量 |
reserve() | 保留一定量内存以容纳一定数量的字符 |
[ ],at() | 存取单一字符 |
>>,getline() | 从stream中读取某值 |
<< | 将某值写入stream |
copy() | 将内容复制为一个C-string |
c_str() | 将内容以C-string形式返回 |
data() | 将内容以字符数组形式返回 |
substr() | 返回某个子字符串 |
begin(),end() | 提供正常的迭代器支持 |
rbegin(),rend() | 提供逆向迭代器支持 |
构造和析构函数
表达式 | 效果 |
---|
string s | 生成一个空字符串 |
string s(str) | copy构造函数,生成一个str的复制品 |
string s(str,idx) | 将string内始于位置idx的部分当作字符串s的初值 |
string s(str,idx,len) | 将string内始于位置idx且长度最多为len的部分当作字符串s的初值 |
string s(cstr) | 以C-string字符串cstr作为字符串s的初值 |
string s(cstr,len) | 以C-string字符串cstr的前len个字符作为字符串s的初值 |
string s(num,c) | 生成一个字符串,包含num个字符c |
string s(beg,end) | 以区间[beg,end]内所有字符作为字符串s的初值 |
s.~string() | 销毁所有字符,释放内存 |