STL标准库中string,vector,list使用的异同点
                                             我们一起来学习
              我们一起来学习
常用接口
string类常见构造:
成都创新互联专注于企业全网整合营销推广、网站重做改版、斗门网站定制设计、自适应品牌网站建设、HTML5、商城网站定制开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为斗门等各大城市提供网站开发制作服务。
| 函数名 | 功能说明 | 
|---|---|
| string() | 构造空的string类对象,即空字符串 | 
| string(const char* s) | 用C-string来构造string类对象 | 
| string(size_t n, char c) | string类对象中包含n个字符c | 
| string(const string&s) | 拷贝构造函数 | 
void Teststring()
{
 string s1; // 构造空的string类对象s1
 string s2("hello bit"); // 用C格式字符串构造string类对象s2
 string s3(s2); // 拷贝构造s3
}vector类常见构造函数:
| 函数名 | 功能说明 | 
|---|---|
| vector() | 无参构造 | 
| vector(size_type n, const value_type& val = value_type()) | 构造并初始化n个val | 
| vector (const vector& x); | 拷贝构造 | 
| vector (InputIterator first, InputIterator last); | 使用迭代器进行初始化构造 | 
 std::vector first; 
 std::vector second (4,100);
 std::vector fourth (third); 
 std::vector third (second.begin(),second.end());    list类常见构造函数:
| Column 1 | Column 2 | 
|---|---|
| list() | 构造空的list | 
| list (size_type n, const value_type& val = value_type()) | 构造的list中包含n个值为val的元素 | 
| list (const list& x) | 拷贝构造函数 | 
| list (InputIterator first, InputIterator last) | 用[first, last)区间中的元素构造list | 
std::list l1;
 std::list l2 (4,100); 
 std::list l4 (l3); 
 std::list l3 (l2.begin(), l2.end());    迭代器器操作
string,vector,list三个类迭代器操作一模一样
| 函数名 | 功能说明 | 
|---|---|
| begin | 将迭代器返回到开头 | 
| end | 将迭代器返回到结尾 | 
| rbegin | 将反向迭代器返回到反向开始 | 
| rend | 将反向迭代器返回到反向结尾 | 
空间容量操作
string,vector类的空间容量操作,length()函数是string类独有
| 函数名 | 功能说明 | 
|---|---|
| size/length | 返回字符串有效字符长度 | 
| capacity | 返回空间总大小 | 
| max_size | 可供储存元素的个数的上线,通常是由于寻址空间决定的 | 
| empty | 检测字符串释放为空串,是返回true,否则返回false | 
| clear | 清空有效字符 | 
| reserve | 为字符串预留空间 | 
| resize | 将有效字符的个数该成n个,多出的空间用字符c填充 | 
list类的空间容量操作:
| 函数名 | 功能说明 | 
|---|---|
| size | 返回字符串有效字符长度 | 
| capacity | 返回空间总大小 | 
| max_size | 可供储存元素的个数的上线,通常是由于寻址空间决定的 | 
修改元素操作
string,vector,list三个类共有的函数操作
| 函数名 | 功能说明 | 
|---|---|
| push_back | 在末尾追加元素 | 
| pop_back | 删除末尾元素 | 
| insert | 插入元素 | 
| erase | 删除元素 | 
| swap | 交换元素 | 
string独有操作
| 函数名 | 功能说明 | 
|---|---|
| operator+= | 在字符串后追加字符串 | 
list类独有操作
| 函数名 | 功能说明 | 
|---|---|
| push_front | 头插 | 
| pop_front | 头删 | 
vector,list共有函数
| 函数名 | 功能说明 | 
|---|---|
| clear | 清空内容 | 
独有操作
每个类型模板都有自己的一些独有操作函数
例如:string类的c_str等函数
而有些操作例如:
list类中unique(),remove(),remove_if(),sort(),reverse()
string类中find(),copy()等函数虽然在STL中都是独有的,但是在algorithm头文件(这个头文件的强大远出乎你的想象哦o(^@^)o)中都有涉及,意味着只要运用得到,reverse()也可以对string类的对象使用
网页名称:STL标准库中string,vector,list使用的异同点
本文链接:http://www.scyingshan.cn/article/jjcdsc.html

 建站
建站
 咨询
咨询 售后
售后
 建站咨询
建站咨询 
 