'function'的外联定义与'Class'中的任何声明都不匹配

时间:2016-05-12 21:48:51

标签: c++ objective-c opencv objective-c++

所以我正在使用OpenCV开发一个iOS项目,目前我正在尝试将部分现有的c ++项目导入到iOS应用程序中,最近出现了这个错误。我对C ++和目标C都很陌生,所以也许我错过了一些非常明显的东西。

我注意到尝试在Contour命名空间中定义和实现任何新函数会导致相同的错误,并且添加虚拟说明符似乎不会改变这一点。但绘制功能不会遇到问题。我也尝试过退出并重新启动xcode,如同类似问题所示,但问题仍然存在。

函数writeToFile(string fname)在头文件中定义,如下所示,但在实现文件中,错误主张“'writeToFile'的外部定义与'中的任何声明都不匹配'轮廓'“:

2DContour.h:

rebase

2DContour.cpp:

1.3.6

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:4)

您的声明

void writeToFile(String fname);

与实施不匹配

void Contour::writeToFile(string fname)

声明使用了资本-S"字符串"虽然实现有小写-s"字符串。"匹配它们应该解决它。