【Errors】【计算机图形学】0x00007FFF7CF44F99 处(位于 Program2.exe 中)有未经处理的异常: Microsoft C++ 异常: cv::Exception,位于内

报错内容

报错内容如下:
0x00007FFF7CF44F99 处(位于 Program2.exe 中)有未经处理的异常: Microsoft C++ 异常: cv::Exception,位于内存位置 0x000000DB82AFE770 处。

报错过程

我的代码:

#include <iostream>
#include <opencv2/opencv.hpp>
int main(int argc, const char** argv)
{
    
    
    cv::Mat img = cv::imread("D:\\pic.jpg");
    cv::imshow("原画", img);
    cv::waitKey(0);
    return 0;
}

是在imshow这一部分出错的。我就想是不是因为img为空,于是修改代码如下:

#include <iostream>
#include <opencv2/opencv.hpp>
int main(int argc, const char** argv)
{
    
    
    cv::Mat img = cv::imread("D:\\pic.jpg");
    if (myImg.empty()) {
    
    
        std::cout << "读取失败!" << std::endl;
    }
    else
    {
    
    
        cv::imshow("原画", myImg);
    }
    cv::waitKey(0);
    return 0;
}

运行后发现输出了“读取失败”,这说明是imread读取就没成功。

修改方法

修改的方法如下:
右键红圈处的Program2,打开属性页
打开链接器下的输入部分,编辑附加依赖项
在这里插入图片描述
一般在配置工程时,Debug工程的“链接器->附加依赖项”一般只加*d.lib库;而Release工程的“链接器->附加依赖项”一般只加*.lib库,这样就可以避免以上问题。
在这里我用的是Debug,所以就把不带d的删掉了。
应用后稍等一会儿(感觉VS反应莫名有点慢。。可能只是在我电脑上这样)重新运行。

猜你喜欢

转载自blog.csdn.net/passer__jw767/article/details/121188121