读书人

vector push_back出错(release版本),该

发布时间: 2012-02-23 22:01:35 作者: rapoo

vector push_back出错(release版本)
如题,我这个vector当作函数参数传入,在函数体内push_back,debug版本正常,release版本出现异常
函数如下
void function(vector<int *> *list)
{
int *pInt=new int;
list->pushback(pInt);
}

[解决办法]
估计是list参数错误,看看是怎么来的。
[解决办法]
估计不是这个地方错,看程序崩溃在哪
[解决办法]

探讨
我传list这个指针进来,release版本地址怎么是零的,郁闷,debug有地址

[解决办法]
探讨
我传list这个指针进来,release版本地址怎么是零的,郁闷,debug有地址

[解决办法]
release版本在调试的时候不能正常显示数据信息。
[解决办法]
我觉得你这个地方使用的就有问题。
void function(vector <int *> *list)
{
int *pInt=new int;
list->pushback(pInt);
}
完全可以这么写
void function(vector <int>& list)
// sizeof(int) == sizeof(point),而且这样写你还不用考虑内存泄漏的问题,否则在释放vector之前你还要主动释放in*指向的内存。
{
list.pushback(sizeof(int));
}

最好是把你调用的地方的代码给发出来这样才能看出来问题。

读书人网 >VC

热点推荐