0

直到今天,我的代码已经完美运行了几个月。它在 C++ 中

#include <iostream>
#include <cv.h>
#include <highgui.h>
#include <stdio.h>

using namespace std;

int main()
{
IplImage* img = cvLoadImage("C:/Users/Amadeus/Documents/H1/cat.png");

int result=cvSaveImage("C:/Users/Amadeus/Documents/H1/cat.png",img); <----- Problem

return 0;
}

它一直说“未在此范围内声明 cvSaveImage”。在所有人都说出来之前可以完美编译的文件。我不明白为什么它工作了好几个月,今天它说它没有被宣布。我什至打开了我知道肯定有效的文件,甚至那些没有。这就像头文件损坏或什么?你怎么看?

4

1 回答 1

0

显然,您的系统发生了一些变化。我假设你不知道具体是什么。开始发现它的好点是在预处理完成后查看您的文件。例如,请参阅有关如何执行此操作的问题。很可能您cv.h出于某种原因指向错误或损坏的文件。

顺便说一句,你为什么不使用现代 C++ OpenCV 函数imreadimwrite?他们在方面都比他们的老 C 祖先好。

于 2013-03-30T21:49:54.250 回答