1

我在 Ubuntu 11.10 上使用 OpenCV 2.4 和 NetBeans 7.0.1。

当我尝试编译包含以下内容的代码时

CvSubdiv2DPoint* pt = cvSubdiv2DEdgeOrg( t );

我收到以下编译错误

error: there are no arguments to ‘cvSubdiv2DEdgeOrg’ that depend on a template parameter, so a declaration of ‘cvSubdiv2DEdgeOrg’ must be available [-fpermissive]
note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)

当我右键单击 CvSubdiv2DPoint 并选择 Navigate:Got to Declaration/Definition 时,它在 types_c.h 中定义。如果据称“未声明”,我不明白我如何得到定义。另外,如果我包括

#include "types_c.h"

并确保 types_c.h 在包含路径中,我仍然收到上面的错误消息。


彼得,我们将不胜感激在解决这个问题方面的任何帮助。

4

1 回答 1

2

它被转移到遗产。您需要包含其标题:

#include "opencv2/legacy/legacy.hpp"
于 2012-05-23T04:38:48.503 回答