stl 学习笔记 9

 

vector 容器方法的例子

// stl/vectors1

/*
vector 的一些方法
*/

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

int  main()
{
    vector
<string> sentence;
    sentence.reserve(
5);

    sentence.push_back(
"Hello, ");
    sentence.push_back(
"how");
    sentence.push_back(
"are");
    sentence.push_back(
"you");
    sentence.push_back(
"?");

    copy(sentence.begin(),sentence.end(),ostream_iterator
<string>(cout," "));
    cout 
<<endl;

    
// max_size 方法
    cout <<"max_size(): "<<sentence.max_size() <<endl;

    
//size()
    cout <<"size(): "<<sentence.size()<<endl;
    
    
//capacity()
    cout <<"capacity(): "<<sentence.capacity()<<endl;

    
// swap

    swap(sentence[
1],sentence[3]);

    
// insert
    
// find
    sentence.insert(find(sentence.begin(),sentence.end(),"?"),"always");

    
//? change to !
    sentence.back() = "!";

    copy(sentence.begin(),sentence.end(),ostream_iterator
<string>(cout," "));

    cout 
<<endl;

    
// max_size 方法
    cout <<"max_size(): "<<sentence.max_size() <<endl;

    
//size()
    cout <<"size(): "<<sentence.size()<<endl;
    
    
//capacity()
    cout <<"capacity(): "<<sentence.capacity()<<endl;
}


//  result
/*
Hello,  how are you ?
max_size(): 153391689
size(): 5
capacity(): 5
Hello,  you are how always !
max_size(): 153391689
size(): 6
capacity(): 7
Press any key to continue
*/

 

 

 deque 容器的例子

// stl/deque1
#include  < iostream >
#include 
< deque >
#include 
< string >
#include 
< algorithm >
using   namespace  std;

int  main()
{
    deque
<string> coll;
    coll.assign(
3,string("string"));
    coll.push_back(
"last string");
    coll.push_front(
"first string");

    copy(coll.begin(),coll.end(),ostream_iterator
<string>(cout," "));

    cout 
<<endl;

    coll.pop_front();
    coll.pop_back();

    
for(int i =1; i!=coll.size();++i)
        coll[i] 
= "another" + coll[i];

    coll.resize(
4,"resized string");
    copy(coll.begin(),coll.end(),ostream_iterator
<string>(cout," "));
}


// result
/*
first string
string
string
string
last string

string
anotherstring
anotherstring
resized string
*/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值