VS2013 调试时不能正常输出,用release却可以... 50
~LIS(){printf("unconstruction\n");while(!_heads.empty()){delete_heads.back();_heads.p...
~LIS()
{
printf("unconstruction\n");
while (!_heads.empty())
{
delete _heads.back();
_heads.pop_back();
}
printf("unconstruction\n");
}
遇到几次这种问题了,_heads是vector容器,存放的是1000000个指针,调试的时候一直输不出第二个unconstruction,但用release编译后运行却可以,速度也快了几倍,想问问怎么回事?是不是VS2013 调试的时候在后台多做的那些工作导致的?
C++程序,~LIS()是一个类中的析构函数... 展开
{
printf("unconstruction\n");
while (!_heads.empty())
{
delete _heads.back();
_heads.pop_back();
}
printf("unconstruction\n");
}
遇到几次这种问题了,_heads是vector容器,存放的是1000000个指针,调试的时候一直输不出第二个unconstruction,但用release编译后运行却可以,速度也快了几倍,想问问怎么回事?是不是VS2013 调试的时候在后台多做的那些工作导致的?
C++程序,~LIS()是一个类中的析构函数... 展开
1个回答
展开全部
可能是没有配置好link关系吧。
首先使用s.dll是什么时候用的,是加载时(也就是启动A的时候)还是运行时(调用S里面函数的时候)?
如果是加载时,debug的时候需要lib文件,用来指明dll里面的函数签名等,在solution里面需要配置,可以参考我的一点笔记:http://blog.csdn.net/dodomouse/article/details/12843821
如果是运行时,则需要通过loadLibrary等函数来使用.
首先使用s.dll是什么时候用的,是加载时(也就是启动A的时候)还是运行时(调用S里面函数的时候)?
如果是加载时,debug的时候需要lib文件,用来指明dll里面的函数签名等,在solution里面需要配置,可以参考我的一点笔记:http://blog.csdn.net/dodomouse/article/details/12843821
如果是运行时,则需要通过loadLibrary等函数来使用.
追问
我这个是C++程序,不是dll呃...
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询