<string>

定义容器类模板 basic_string 和各种支持模板。

有关 basic_string 的详细信息,请参阅 basic_string

语法

#include <string>

备注

C++ 语言和 C++ 标准库支持两种类型的字符串:

  • 以 null 结尾的字符数组通常作为 C 字符串被引用。

  • basic_string 类型的类模板对象,它处理类似于 char 的所有模板自变量。

Typedef

类型名称 说明
string 使用 char 类型的元素将 basic_string 类模板的专用化描述为 string 的类型。
wstring 使用 wchar_t 类型的元素将 basic_string 类模板的专用化描述为 wstring 的类型。
u16string 基于 char16_t 类型的元素描述类模板 basic_string 的专用化的类型。
u32string 基于 char32_t 类型的元素描述类模板 basic_string 的专用化的类型。

运算符

运算符 说明
operator+ 连接两个字符串对象。
operator!= 测试运算符左侧的字符串对象是否不等于右侧的字符串对象。
operator== 测试运算符左侧的字符串对象是否等于右侧的字符串对象。
operator< 测试运算符左侧的字符串对象是否小于右侧的字符串对象。
operator<= 测试运算符左侧的字符串对象是否小于或等于右侧的字符串对象。
operator<< 一个模板函数,用于向输出流插入字符串。
operator> 测试运算符左侧的字符串对象是否大于右侧的字符串对象。
operator>= 测试运算符左侧的字符串对象是否大于或等于右侧的字符串对象。
operator>> 一个模板函数,用于从输入流提取字符串。

专用化模板函数

名称 描述
hash 生成字符串的哈希。
swap 交换两个字符串的字符数组。
stod 将字符序列转换为 double
stof 将字符序列转换为 float
stoi 将字符序列转换为 int
stold 将字符序列转换为 long double
stoll 将字符序列转换为 long long
stoul 将字符序列转换为 unsigned long
stoull 将字符序列转换为 unsigned long long
to_string 将一个值转换为 string
to_wstring 将一个值转换为宽字符串。

函数

函数 说明
getline 模板 从输入流中逐行提取 string

说明
basic_string 一个类模板,用于描述可存储任意类似字符的对象序列的对象。
char_traits 结构 一个类模板,用于描述与类型 CharType 的字符关联的特性

专用化

名称 描述
char_traits<char> 结构 char_traits<CharType> 模板结构对 char 类型的元素的专用化的结构。
char_traits<wchar_t> 结构 char_traits<CharType> 模板结构对 wchar_t 类型的元素的专用化的结构。
char_traits<char16_t> 结构 char_traits<CharType> 模板结构对 char16_t 类型的元素的专用化的结构。
char_traits<char32_t> 结构 char_traits<CharType> 模板结构对 char32_t 类型的元素的专用化的结构。

要求

  • 标头<string>

  • 命名空间: std

另请参阅

头文件引用
C++ 标准库中的线程安全