prototype for ‘void TemplateMatch::DataMatch(std::vector<LabelMatch>::iterator, int)’ does not match any in class ‘TemplateMatch’ void TemplateMatch::DataMatch(std::vector<LabelMatch>::iterator first, std::vector<LabelMatch>::iteraotr last)
时间: 2023-08-07 11:04:03 浏览: 143
手几何:手几何识别系统-matlab开发
这个错误提示表明函数原型与类定义中声明的函数原型不匹配,导致编译器无法找到要调用的函数。
在你的类定义中,函数`DataMatch()`的原型是`void TemplateMatch::DataMatch(std::vector<LabelMatch>::iterator, int)`,即该函数接受一个迭代器和一个整数作为参数。但是在你的函数实现中,`DataMatch()`的原型是`void TemplateMatch::DataMatch(std::vector<LabelMatch>::iterator first, std::vector<LabelMatch>::iteraotr last)`,即该函数接受两个迭代器作为参数。
因此,你需要将函数定义中的参数列表与类定义中声明的函数原型保持一致。在这个例子中,你需要将函数定义中的参数`std::vector<LabelMatch>::iteraotr last`更改为`int`类型的参数。如下所示:
```
void TemplateMatch::DataMatch(std::vector<LabelMatch>::iterator first, int n)
{
// your code here
}
```
这样做应该可以解决你遇到的问题。
阅读全文