这段代码在Windows上完美运行但是我试图在linux上运行它并且它给出了这个错误:
在函数'void kmline(cv :: Mat,std :: vector>&)'中:| 错误:'它'没有命名类型|错误:在'it'|之前预期';' 错误:'it'未在此范围中声明| || ===构建失败:3 错误,0
警告(0分钟,3秒(秒))=== |
码
void kmline( Mat image, std::vector<Point>& points )
{.
.
.
.
if (points.size() > 1) //we have 2 points
{
for (auto it = points.begin(); it != points.end(); ++it)
{
}
}
}
答案 0 :(得分:1)
使用g++ main.cpp -std=c++11 -lopencv_core -lopencv_highgui
编译并使用命名空间cv添加; using namespace std;并包含适合我的。
#include <vector>
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;
void kmline( Mat image, std::vector<Point>& points )
{
if (points.size() > 1) //we have 2 points
{
for (auto it = points.begin(); it != points.end(); ++it)
{
}
}
}
int main()
{
return 0;
}