方法参数中的 OpenCV Mat 'expected ")"'
OpenCV Mat 'expected ")"' in method parameter
我目前正在开发一个涉及混合 C++ 和 Objective C 的 Mac 应用程序。我正在尝试将应用程序的一部分分离到一个 cpp 源文件中,但我无法编译该死的东西。
请记住,我是非常使用C++的新手,如果我犯了一个非常愚蠢的错误,请原谅我。
我已设法将其缩减为尽可能少的示例。出于某种原因,当我在方法声明中使用 Mat
数据类型时,我得到
expected ')'
我的头文件
#ifndef MATCHTEMPLATES_H
#define MATCHTEMPLATES_H
#include "opencv2/opencv.hpp"
class Matcher {
public:
Matcher(cv::Mat& template);
};
#endif
我的源文件
#include "Matcher.hpp"
using namespace cv;
Matcher::Matcher(Mat& template) { }
编译命令
clang++ -isystem /usr/local/Cellar/opencv3/3.1.0_3/include/opencv -isystem /usr/local/Cellar/opencv3/3.1.0_3/include -o CMakeFiles/Tracker.dir/source/cpp/Matcher.cpp.o -c {project location}/source/cpp/Matcher.cpp
是的,愚蠢的错误。
显然'template'是c++中的保留字
感谢塞巴斯蒂安霍夫曼指出这一点...
我目前正在开发一个涉及混合 C++ 和 Objective C 的 Mac 应用程序。我正在尝试将应用程序的一部分分离到一个 cpp 源文件中,但我无法编译该死的东西。
请记住,我是非常使用C++的新手,如果我犯了一个非常愚蠢的错误,请原谅我。
我已设法将其缩减为尽可能少的示例。出于某种原因,当我在方法声明中使用 Mat
数据类型时,我得到
expected ')'
我的头文件
#ifndef MATCHTEMPLATES_H
#define MATCHTEMPLATES_H
#include "opencv2/opencv.hpp"
class Matcher {
public:
Matcher(cv::Mat& template);
};
#endif
我的源文件
#include "Matcher.hpp"
using namespace cv;
Matcher::Matcher(Mat& template) { }
编译命令
clang++ -isystem /usr/local/Cellar/opencv3/3.1.0_3/include/opencv -isystem /usr/local/Cellar/opencv3/3.1.0_3/include -o CMakeFiles/Tracker.dir/source/cpp/Matcher.cpp.o -c {project location}/source/cpp/Matcher.cpp
是的,愚蠢的错误。
显然'template'是c++中的保留字
感谢塞巴斯蒂安霍夫曼指出这一点...