我想創建一個C++類,該類僅與靜態函數結合使用,不管使用什麼靜態函數。我已經創建了帶有聲明的.h
文件和帶有定義的.cpp
文件。但是,當我在代碼中使用它時,我收到了一些我不知道如何解決的奇怪錯誤消息。C++:如何用靜態函數定義一個類
這裏是我的Utils.h
文件的內容:
#include <iostream>
#include <fstream>
#include <sstream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;
#include <vector>
#include <opencv/cv.h>
#include <opencv/cxcore.h>
class Utils
{
public:
static void drawPoint(Mat &img, int R, int G, int B, int x, int y);
};
這裏是我的Utils.cpp
文件的內容:
#include "Utils.h"
void Utils::drawPoint(Mat &img, int R, int G, int B, int x, int y)
{
img.at<Vec3b>(x, y)[0] = R;
img.at<Vec3b>(x, y)[1] = G;
img.at<Vec3b>(x, y)[2] = B;
}
這是我多麼希望在我main
功能的使用方法:
#include <iostream>
#include <fstream>
#include <sstream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;
#include <vector>
#include <opencv/cv.h>
#include <opencv/cxcore.h>
#include "CThinPlateSpline.h"
#include "Utils.h"
int main()
{
Mat img = imread("D:\\image.png");
if (img.empty())
{
cout << "Cannot load image!" << endl;
system("PAUSE");
return -1;
}
Utils.drawPoint(img, 0, 255, 0, 20, 20);
imshow("Original Image", img);
waitKey(0);
return 0;
}
這裏是我的錯誤接收。
有人可以指出我做錯了什麼嗎?我錯過了什麼?
爲什麼不復制錯誤呢,沒有頭文件編譯 –
你忘了再次複製錯誤.. – none