我的stl小结用法.pdf
文本预览下载声明
我的stl 用法小结
一Vector,头文件#includevector
1. 创建
(1)vectorint v
(2 )vectorint v(10)表示有10 个元素
(3 )vectorint v(10,8)表示有10 个元素,每个元素的值是8
2. 尾部元素的扩张
#includevector
v.push_back(10)把10 放到尾部
3.用迭代器访问vector
Vectorint::iterator it;
for(it=v.begin();it!=v.end();it++)
{
cout*itendl;
}
3. 元素的插入
v.insert(v.begin+2,1)表示在第二个元素前插入1(从0 开始计数)
4.元素的删除
(1)v.erase(v.begin()+2)表示删除第二个数(从0 开始计数)
(2 )v.clear()表示一次性清空
5.使用reverse 反向排列(不改变大小)
reverse(v.begin(),v.end())
6.sort 排序,头文件#includealgorithm
sort(v.begin(),v.end())
还能自己设计比较函数
bool comp(const int a,const int b)
{
If(a!=b) return ab;
else return ab;
}
Sort(v.begin(),v.end(),comp)
7. 向量大小
v.size()
v.empty()
二.string 头文件#includestring
1.创建
String s
2.赋值
S=”hello,c++stl”
Coutsendl
4. 尾部添加字符
S=s+’a’ s=s+”abc” 或s.append(“abc”)
5. 插入字符
s.insert(s.begin(),”abc”)
6.删除字符
s.erase(s.begin()+2) s.erase(s.begin(),s.begin()+2)删除0 到2 之间的
所有元素
7.求长度
s.length
8.替换字符
s.replace(3,3,”good”)从第3 个开始,把3 个连续的字符替换为“good ”
9.查找
s.find(“dog”) 查不到则返回4294967295
10.比较
pare(“dog”) 相等返回0 ;小于-1,大于1
11.vectorstring v 相当于字符串数组a[][]
Sscanf(“abc 123 pc”,”%s %s %s”,sa,sb,sc)
Sa,sb,sc 为char sa[],char sb[]
12.string 对象与数值相互转换
(1).#include iosream
#include string
#include sstream
Using namespace std;
String converttostring(double x)
{
ostringstream o;
if(ox) return o.str();
}
String cc=converttostring(1976)
Coutccendl;
(2)将string 转化为数字
Double convertfromstring(const string s)
{
Istringstream i(s);
Double x;
If(ix) return x;
}
P=convertfromstring(dd)+2;
Coutpendl;
三,set 容
显示全部