stl学习笔记1

 

最近觉得有必要系统地学习一下stl了,感觉《The C++ Stand Library 》这本书相当不错,每天写一下里面的代码,当作练习,希望早日能够对Stl应用自如。

入门第一课,今天写了一下序列式容器  的code

 

// stl/vector1.cpp

#include 
< iostream >
#include 
< vector >
using   namespace  std;

int  main()
{
    vector
<int> coll;

    
for(int i =0; i<10;++i)
    
{
        coll.push_back(i);
    }


    
for(int i =0; i!=coll.size(); ++i)
    
{
        cout 
<< coll[i]<<' ';
    }

    
    cout 
<<endl;
    
return 0;
}

 

 

//  stl/deques.cpp

#include 
< iostream >
#include 
< deque >
using   namespace  std;

//  deque 头尾都可以有效地快速地插入新元素

int  main()
{
    deque
<float> coll;
    
for(int i =1; i<=10++i)
    
{
        coll.push_front(i
*1.1);
    }


    
for(int i =1; i<=10++i)
    
{
        coll.push_back(i
*1.111);
    }

    
for(int i =0; i != coll.size(); ++i)
        cout 
<<coll[i]<<' ';
    cout 
<<endl;
    
//return 0; // 标准c++里main函数好像隐藏了个 return 0
}

 

 

// stl // list1.cpp

#include 
< iostream >
#include 
< list >
//  list 是双向链表
using   namespace  std;

int  main()
{
    list
<char> coll;
    
for(char c = 'a'; c<='z';++c)
    
{
        coll.push_back(c);
    }


    
while(!coll.empty())
    
{
        cout 
<< coll.front() <<' '// 输出第一个元素
        coll.pop_front();// pop 会删除第一个元素
    }

    cout 
<<endl;
}

 

用迭代器,stl中的好东西,

// stl/list2.cpp
/*
using const_iterator traverse list
*/

#include 
< iostream >
#include 
< list >

using   namespace  std;

int  main()
{
    list 
<char> coll;

    
for(char c ='a';c<='z';++c)
    
{
        coll.push_back(c);
    }

    
// 只读模式的迭代器
    list<char>::const_iterator pos;

    
/*
    // 读写模式的迭代器,改变元素值用这个
    list<char>::iterator pos;
    
*/

    
for(pos = coll.begin(); pos!=coll.end(); ++pos)
        cout 
<<*pos <<' ';
    cout 
<<endl;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值