基本原则: 使用完内存就要释放内存
分配: new 关键字 分配一块内存,然后可以用一个指针指向这块的内存(早期使用 malloc 来进行内存分配,但是C++里面不太建议了)
释放:delete关键字 释放内存。当你释放的是一片连续的区域的时候使用的是:delete [ ]指针变量。(相应的你如果使用的是malloc分配内存的话,那就要用free释放掉了)
opencv是否需要释放内存?
当你使用Mat 这些数据结构的时候不需要,因为它在里面已经做了内存管理。 如果你使用比较旧的数据结构 IpImage* CvMat 这些的话需要相应的释放内存。
x86 使用问题: 当你按照上述规则进行内存管理了还是出问题:Microsoft C++ exception: std::bad_alloc at memory location 0x00a6f628,可能的原因是:
这个时候你可以选择下X64的平台来调试。可能就没问题了!