osgPhysX编译错误:Debug Assertion Failed _pFirstBlock == pHead

来源:互联网 发布:动感相册制作软件 编辑:程序博客网 时间:2024/05/16 09:22

在osgPhysX出现这个错误:_pFirstBlock == pHead ,决心把它搞定。先仔细研究一下。

我在想这个是真正的原因吧?

 

VC在debug版和release版中分配堆的区别


http://blog.csdn.net/zhengxh/article/details/6910548


new操作符内部原理(二) 及 delete和free

http://blog.csdn.net/masefee/article/details/4019099



①混淆了 Debug和Release情况,有时Debug和Release所需要的库是不一样的,如果你只导入了Release的链接库,而没有导入Debug的链接库,而编译运行时又选择了Debug模式,就可能出现这种问题,这时要把Debug的链接库添加进去可能就会解决。

 

②可能是在一个多线程模块了运行了一个单线程库,内存在dll一侧被分配,在使用一侧被释放,可能导致一个内存管理器在分配内存,另一个内存管理器在释放同一片内存区域,导致错误。

【Debug Assertion Failed!Expression:_pFirstBlock ==

http://blog.csdn.net/baobei0112/article/details/51794611


PS:解决项目的这个异常问题的情况就是用到的PhysX库采用 MFC的使用设置为:在共享 DLL 中使用 MFC,运行库改为多线程调试 DLL (/MDd),另外把osgPhysX的也修改一致,自己的工程也修改,当他们一致的时候,异常消除。


0 0
原创粉丝点击