stl vector作为函数返回值不行??求解释原因,不是要规避方法
答案:3 悬赏:0 手机版
解决时间 2021-04-11 03:07
- 提问者网友:别再叽里呱啦
- 2021-04-10 07:31
list create_1()
{
list a1;
return a1;
}
vector create_2()
{
vector a2;
return a2;
}
int main()
{
//这里OK
list b=create_1();
//到这里就跑飞了,why????
vector c=create_2();
return 0;
}
VC2005的~~~~~呵呵
求解释原因
最佳答案
- 五星知识达人网友:傲气稳了全场
- 2021-04-10 07:45
你的程序没有问题,这样写完全是对的,
如果没猜错是你的编译器需要打补丁 ,如果是 vc6 ,那不仅要打补丁sp6,而且 vc6对模板支持本来就有bug, 赶紧换到 vs2010
全部回答
- 1楼网友:北方的南先生
- 2021-04-10 08:49
a1 是函数create_!内定义的 函数退出就被清理了。
再看看别人怎么说的。
在VC6下调试通过, 代码没问题。
无法解释的问题常常出在编译环境上。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯