
STL
meetings
这个作者很懒,什么都没留下…
展开
-
对智能指针auto_ptr 的学习
1.问题引入#includeusing namespace std;class A{ public: A(){cout << "执行构造函数 ~"<< endl;} ~A(){cout << "执行析构函数 ~"<< endl;}} ;class B{};void func(){ throw B();}int main(){原创 2015-06-24 22:40:38 · 477 阅读 · 0 评论 -
stl中sort函数详解
1. sort 函数的形式:sort(first_pointer,first_pointer+n,cmp) 函数的第一个参数是数组的首地址,一般写上数组名就可以,因为数组名是一个指针常量。第二个参数相对较好理解,即首地址加上数组的长度n。最后一个参数是比较函数的名称(一般比较函数名字都用cmp,当然这个名字是什么都所谓),这个比较函数可以不写,即第三个参数可以缺省。此时s原创 2015-06-23 13:18:58 · 2642 阅读 · 0 评论 -
验证vector变量是在内存中怎么分配的
#include#include using namespace std;class A {public: A (int i = 0) : m_i (i) { cout << "无参构造:" << this << endl; } A (const A& that) : m_i (that.m_i) { cout " << this << endl; } A& op原创 2015-06-23 13:16:33 · 1709 阅读 · 0 评论 -
stl中for_each函数 的使用及实现-----泛型思想
1.使用方法#include#include#includeusing namespace std;void print(int& x){ cout << x <<' ' ;}int main(){ //调用数组 int a[5]={1,2,3,4,5}; for_each(a,a+5,print);//按顺序打印 1,2,3,4,5 /原创 2015-06-20 11:35:22 · 742 阅读 · 0 评论 -
c_str函数
1. c_str():生成一个const char*指针,指向以空字符终止的数组。注:①这个数组的数据是临时的,当有一个改变这些数据的成员函数被调用后,其中的数据就会失效。因此要么现用先转换,要么把它的数据复制到用户自己可以管理的内存中。注意。看下例:const char* c;string s="1234";c = s.c_str(); cout<<c<<endl;转载 2015-06-20 11:15:00 · 512 阅读 · 0 评论 -
利用map的特性做一个简易的投票程序
pair1. 概念:pair是 一种模版类型,每个pair 可以存储两个值,这两种值的类型无限制。也可以将自己写的struct类型的的对象放进去。2. 用法:pairp (1,2);pair p1= make_pair(1,2);3. 编写程序读入一系列string和int型数据,将每一组存储在一个pair对象中,然后将这些pair对象存储在vector容器并显示#inclu原创 2015-07-19 11:36:38 · 930 阅读 · 0 评论 -
STL中四种随机迭代器
1. 迭代器的存在价值:为所有容器提供一组公共接口,可以遍历容器中所有元素,可以看做是一种smart pointer,因为它重载了++和 * 运算符2. 四种随机迭代器vector::iterator - 正向迭代器(相当于指针)vector::const_iterator - 常正向迭代器vector::reverse_iterator - 反向迭代器vector::con原创 2015-07-20 08:37:10 · 3535 阅读 · 0 评论