// string 操作
// 修改操作
// s.append(args) 在 s 末尾追加 args, 返回 s 的引用
// s.replace(range, args) 将 range 范围替换为 args , 返回 s 的引用,range 可以是一个下标加一个长度也可以是一对迭代器
// s.assign(args) 将 s 替换为 args 指定的字符, 返回 s 的引用
// s.erase(pos, len) 删除从 pos 位置开始的 len 个字符,如果省略 len ,删除到末尾
// s.insert(pos, args) 在位置 pos 前插入 args 指定的字符,如果 p 是下标,返回 s 的引用,如果 p 是迭代器返回指向第一个插入字符的迭代器
// append 和 assign 中,args 可以是以下任何形式(str 不同于 s,迭代器 b e 不能指向 s)
// 1> str 字符串 str
// 2> str,pos,len str 中 pos 开始最多 len 个字
// 3> cp,len cp 指向空字符结尾的字符数组,该数组的前 len 个字
// 4> cp
// 5> n,c n 个字符 c
// 6> b,e 迭代器范围 b e 中的字符
// 7> 初始化列表 花括号内,逗号分隔的字符列表
// replace 和 insert 中 args 的形式取决于 range 和 pos
// insert 中,如果 pos 是下标, args 可以是 1,2,3,5
// 如果 pos 是迭代器, args 可以是 5,6,7
// replace 中,如果 range 是下标和长度 args 可以是 1,2,3,4,5
// 如果 pos 是一对迭代器, args 可以是 1,3,4,5,6,7
// 搜索操作,大小写敏感
// s.find(args) 查找 args 在 s 中第一次出现的位置
// s.rfind(args) 查找 args 在 s 中最后一次出现的位置
// s.find_first_of(args) 查找 args 中的任意字符在 s 中第一次出现的位置
// s.find_last_of(args) 查找 args 中的任意字符在 s 中最后一次出现的位置
// s.find_first_not_of(args) 在 s 中查找第一个不在 args 中字符
// s.find_last_not_of(args) 在 s 中查找最后一个不在 args 中字符
// args 可以是以下形式
// c,pos 从 s 中位置 pos 开始查找 c 字符,pos 默认为 0
// s2,pos 从 s 中位置 pos 开始查找 s2 字符串,pos 默认为 0
// cp,pos 从 s 中位置 pos 开始查找指针 cp 指向的以空字符结尾的 c 风格字符串,pos 默认为 0
// cp,pos,n 从 s 中位置 pos 开始查找指针 cp 指向的数组的前 n 个字符,pos n 无默认值
// compare 函数
// s.compare(s2) 比较 s s2
// s.compare(pos1,n1,s2) 将 s 中 pos1 开始的 n1 个字符和 s2 比较
// s.compare(pos1,n1,s2,pos2,n2) 将 s 中 pos1 开始的 n1 个字符和 s2 中 pos2 开始的 n2 个字符比较
// s.compare(cp) 比较 s 和 c风格字符串
// s.compare(pos1,n1,cp) 将 s 中 pos1 开始的 n1 个字符和 c风格字符串 比较
// s.compare(pos1,n1,cp,n2) 将 s 中 pos1 开始的 n1 个字符和 c风格字符串的前 n2 个字符比较
// 数值转换
// to_string(val) 返回数值 val 的 string 表示,val 可以是任何算术类型
// stoi(s,p,b) s 字串的 int 数值,b 为转换用的基数,默认为 10,p 是 size_t指针,表示第一个非数值字符的下标,默认为0
// stol(s,p,b) s 字串的 long 数值
// stoul(s,p,b) s 字串的 unsigned long 数值
// stoll(s,p,b) s 字串的 long long 数值
// stoull(s,p,b) s 字串的 unsigned long long 数值
// stof(s,p) s 字串的 float 数值
// stod(s,p) s 字串的 double 数值
// stold(s,p) s 字串的 long double 数值
#include<vector>
#include<string>
#include<iostream>
using std::vector;
using std::string;
using std::cout;
using std::endl;
using std::cin;
void practice_9_41();
int main()
{
practice_9_41();
}
// 从一个 vector<char> 初始化字符串
void practice_9_41()
{
vector<char> vc{'h','e','l','l','o',' ','w','o','r','l','d'};
string s(&vc[0], vc.size());
cout << s << endl;
}
c++ primer(第五版)笔记 第九章 顺序容器(4)
最新推荐文章于 2015-04-02 18:12:05 发布