我是C ++的新手,刚开始使用线程处理项目。
目前我的项目涉及OpenGL和OpenCV库,在编码过程中我遇到了以下错误:
当前语言:auto;目前是c ++ 2009-12-21 14:54:49.438 3DTestApp [3210:7803] *** _NSAutoreleaseNoPool():类NSCFNumber的对象0x10ebe0自动释放,没有池到位 - 只是泄漏 堆栈:(0x91edff4f 0x91dec432 0x941ad394 0x94282218 0x94281b32 0x94528023 0x942813ef 0x94280dc6 0x94489ef4 0x944882ab 0x9350e13d 0x9350d57b 0x9350d3e0 0x93529e29 0x93529bce 0x935292a8 0x935290e4 0x5743e2) 杀 退出
我放置断点并意识到只有在执行以下行后才发生错误:
cvShowImage(“Motion Tracker”,detectionMotionScreen); (此代码位于具有无限循环的线程中)
我已经google了一下,意识到这个错误只发生在Objective C中,我发现没有与C ++相关的结果。
因此,我想问一下是否有人知道为什么会发生这种情况,无论如何都要解决它?
编辑:我已经尝试添加框架Foundation来使用NSAutoreleasePool,但是在编译时它会在我的代码中产生很多关于语法的错误,而实际上却没有。
答案 0 :(得分:0)
Apple没有在IOKit之外用C ++编写的任何公共接口,所以你不会找到任何公共接口。关于CoreFoundation内存管理的程序C文档是here。
如果您需要更具体的帮助,那么您将需要描述您正在做的事情。