一个c++的程序调试出了问题,请大神给看看,我用vs2010分步调试好像是 return 处有了问题

日期:2012-10-05 00:21:08 人气:1

一个c++的程序调试出了问题,请大神给看看,我用vs2010分步调试好像是 return 处有了问题

list fun(string s) { list ll; wordnode *p; p=new wordnode; p->s=s; p->lst.add(3); ll.add(*p); return (ll); } 返回一个局部变量地址是错误的,在栈上的数据是不会保留的函数return的时候 list ll;也被释这样就出错了。 解决方法1 返回一个堆上的数据自己new出来,这样会有内存泄漏 记得释放 所以这个函数应该类似这样 list× fun(st
    A+
热门评论