c++ - 堆已损坏 opencv

标签 c++ opencv assertions

我在转义范围后收到损坏的堆错误消息。 debug_heap.cpp 中的调试断言在 _CrtlsValidHeapPointer(block)

#include "opencv2\opencv.hpp"
#include "opencv2\nonfree\features2d.hpp"

using namespace cv;

int main(int argc, char* argv[]) {

    Mat img = imread(argv[1]);

    SurfFeatureDetector detector(400);

    vector<KeyPoint> keypoints;

    detector.detect(img, keypoints);

    return 0;
}

编辑 固定的。问题在于链接。我使用了 visual studio 2015 和 opencv 2.49 x86 vc10。 vc10 适用于 visual studio 2010。在 visual studio 2010 中运行一些程序并且工作正常。

最佳答案

I get corrupt heap error message after escaping scope.

如果您确定错误恰好在 出现,那么这不是您的代码中的问题。只是您没有正确链接 OpenCV。 x64 和 x86 之间不匹配或 C++ 运行时库之间不匹配。因此,只需确保一切都连接良好即可。

关于c++ - 堆已损坏 opencv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35170610/

相关文章:

c++ - 私有(private)类型的模板特化

c++ - 如何获取有关您的应用占用多少 RAM 的信息?

python - 如何使用相机矩阵使图像不失真?

opencv - 用 opencv 显示 gstreamer

javascript - 使用 Chai 匹配 JSON 对象数组中的数组元素

c++ - 在现有 Qt 项目中从源代码构建第 3 方库

c++ - 我正在尝试在 ALLEGRO c++ 中对许多墙进行整理

java - XML Schema V 1.1 断言在 Xerces-J 中不起作用

c++ - OpenCv c++ 为基本打印垫功能创建 C 包装器?

ruby-on-rails - RAILS - assert_raise 检查异常的深度