标题:下面的一段代码是为了验证insert对deque和vector的影响,可是出来的结果让我 ...
取消只看楼主
纯黑色
Rank: 1
等 级:新手上路
帖 子:347
专家分:0
注 册:2009-4-16
结帖率:91.43%
已结贴  问题点数:20 回复次数:1 
下面的一段代码是为了验证insert对deque和vector的影响,可是出来的结果让我不是很理解,求解释!
程序代码:
#include <vector>
#include <deque>
#include <iostream>
using namespace std;

int main ()
{


        char str[] = "fuckyou";
        vector<char> v1(&str[0],&str[sizeof(str)]);
        deque<char> q1(&str[0],&str[sizeof(str)]);

        vector <char>::iterator vitr=v1.begin();
        cout<<*(vitr)<<endl;
        v1.insert(v1.begin()+2,'a');
        cout<<*(vitr)<<endl;//我不明白这一行的输出结果,求解释。

        cout<<"-----------------------"<<endl;
        deque <char>::iterator qitr=q1.begin();
        cout<<*(qitr)<<endl;
        q1.insert(q1.begin()+2,'a');
        cout<<*(qitr)<<endl;
        return 0;
}

编译环境:centos g++

结果:
f
(空)//这块为什么不输出?
-----------------------
f
u
搜索更多相关主题的帖子: color insert 影响 
2014-01-25 12:59
纯黑色
Rank: 1
等 级:新手上路
帖 子:347
专家分:0
注 册:2009-4-16
得分:0 
回复 2楼 玩出来的代码
就是说在这个例子中,vector reallocate了 对吗?
2014-01-25 16:17



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-426845-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026155 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved