string类是STL中basic_string模板实例化得到的模板类。其定义如下:
typedef basic_string <char>string;
string类是表示字符串的字符串类,该类与其他常规容器的接口基本相同,只不过添加了一些专门用来操作string的常规操作。(不能操作多字节或变成字符的序列);
在使用string类时,需包含头文件,以及std的命名空间展开;
string类的常用接口
函数名称 | 功能 |
---|---|
string() | 构造空的string类对象,即空字符串 |
string(size_t n,char c) | string类对象中包含多少n个字符c |
string(const char* s) | 用C-string来构造string类对象 |
string(const string& s) | 拷贝构造函数 |
string类对象的容量操作
函数名称 | 功能说明 |
---|---|
size() | 返回字符串有效字符长度 |
length | 返回字符串有效字符长度 |
capacity | 返回空间总大小 |
empty | 检测字符串是否为空格,是返回true,反之则返回false |
clear | 清空有效字符 |
reserve | 为字符串预留空间 |
resize | 将有效字符的个数改成n个,多出来的空间用字符c填充 |
size()与length()的底层实现方法完全一致,引入size()的原因是为了与其他容器的接口保持一致。
clear()只是将有效字符清空,不改变底层空间大小。