访问角色
有几种方法可以从 std::string
中提取字符,每种方法都略有不同。
std::string str("Hello world!");
操作符[](n)的
返回对索引 n 处的字符的引用。
std::string::operator[]
未经过边界检查,也不会抛出异常。调用者负责声明索引在字符串的范围内:
char c = str[6]; // 'w'
在(n)的
返回对索引 n 处的字符的引用。
std::string::at
是边界检查,如果索引不在字符串范围内,则会抛出 std::out_of_range
:
char c = str.at(7); // 'o'
Version >= C++ 11
注意: 如果字符串为空,这两个示例都将导致未定义的行为 。
面前()
返回对第一个字符的引用:
char c = str.front(); // 'H'
背部()
返回对最后一个字符的引用:
char c = str.back(); // '!'