标题:vector类 程序意外终止 求解
只看楼主
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
结帖率:80%
已结贴  问题点数:20 回复次数:5 
vector类 程序意外终止 求解
#include<iostream>
#include<vector>
#include<algorithm>

using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
    vector<int> in(6);
    vector<int>::iterator pt,pt1;

    pt=in.begin();
    in.push_back(100);//怀疑是它

    for(pt;pt!=in.end();pt++)
    {
        cout<<*pt<<"  ";
    }   
    getchar();
    return 0;
}

程序意外终止 求解
搜索更多相关主题的帖子: 求解 意外 vector 
2010-04-06 18:16
floppyfuck
Rank: 2
等 级:论坛游民
帖 子:27
专家分:39
注 册:2010-3-1
得分:1 
因为你编写的这个程序中的_TCHAR编译器不识别,而你后面怎么又写了个getchar()
2010-04-06 20:39
yyblackyy
Rank: 6Rank: 6
等 级:侠之大者
帖 子:98
专家分:457
注 册:2010-3-31
得分:18 
因为楼主使用了in.push_back(100); 所以以前赋值的 pt=in.begin();变成了无效的了,现在重新赋值 pt=in.begin(); 还有把pt1去掉,省得发出警告
楼主试试吧
2010-04-06 21:00
floppyfuck
Rank: 2
等 级:论坛游民
帖 子:27
专家分:39
注 册:2010-3-1
得分:1 
这个程序编译不过呀?
2010-04-06 22:10
ml232528
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:367
专家分:879
注 册:2007-7-23
得分:0 
不好意思 这些代码是从 一大段代码中剔除来的 缺什么头文件 大家加上吧
2楼的回答靠谱 可能是 in.push_back(100) 改变了in.begin()的地址 原来的pt不知道指向哪了;


-︻┻┳═一 ☆ 悲伤的代价就是让自己明白什么是最重要的和应该珍惜的
2010-04-07 09:52
caolihui1008
Rank: 2
来 自:石家庄
等 级:论坛游民
帖 子:33
专家分:75
注 册:2009-10-19
得分:0 
修改顺序容器内元素数目后迭代器指向空。所以in.push_back(100)后pt为NULL。
2010-04-08 18:02



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




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

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