| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 668 人关注过本帖
标题:关于delete释放空间报错的问题
取消只看楼主 加入收藏
w470913537k
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2012-10-29
结帖率:77.78%
收藏
已结贴  问题点数:10 回复次数:3 
关于delete释放空间报错的问题
#include <iostream>
#include <vector>

using namespace std;

int main ()
{
    vector<int> number;
    int n;
    while (cin>>n)
    {
        number.push_back(n);
    }
    int *temp=0;
    temp=new int(number.size(),'0');
    size_t i=0;
    for (vector<int>::iterator j=number.begin(); j!=number.end(); j++)
    {
        temp[i]=*j;
        i++;
    }
    for (i=0; i<number.size(); i++)
    {
        cout<<temp[i]<<"\t";
    }
    cout<<endl;
    delete []temp;
    temp=0;
    return 0;
}


这是我写的一段小程序。delete释放空间在运行的时候总是报错。。语法也没有错误,我百度以后也没找到错误的原因。。求各位大神给个答复,谢谢了        
搜索更多相关主题的帖子: vector namespace include number return 
2013-04-09 20:08
w470913537k
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2012-10-29
收藏
得分:0 
temp=new int[number.size()]
如果我把开辟动态数组改成这样的,就不会出问题。。这是为什么呢。。
开辟动态数组不可以按照我写的程序那样来吗
2013-04-09 20:10
w470913537k
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2012-10-29
收藏
得分:0 
回复 4楼 fanpengpeng
呃。。。我只是想要进行初始化。。。
new int(number.size(),'0');
就是开辟一个数组,将其中所有的值初始化为0.
2013-04-09 21:20
w470913537k
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2012-10-29
收藏
得分:0 
回复 6楼 fanpengpeng
THANK YOU啦。。
搞懂了。。。C++好难学啊。。。看书看一看就忘了以前的了。。
2013-04-09 21:42
快速回复:关于delete释放空间报错的问题
数据加载中...
 
   



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

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