当运行以下代码时,
CvPoint rad1,rad2,rad3,rad4; //four circle center points
rad1=cvPoint(80,160),rad2=cvPoint(151,89),rad3=cvPoint(222,160),rad4=cvPoint(151,231);
cvCircle(mi,rad1,50,fcol,CV_FILLED,CV_AA,0); //paint the four circles
cvCircle(mi,rad2,50,fcol,CV_FILLED,CV_AA,0);
cvCircle(mi,rad3,50,fcol,CV_FILLED,CV_AA,0);
cvCircle(mi,rad4,50,fcol,CV_FILLED,CV_AA,0);
出现错误如下:
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(20) : error C2143: syntax error : missing ';' before 'constant'
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(21) : error C2440: '=' : cannot convert from 'struct CvPoint' to 'const int'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(21) : error C2440: '=' : cannot convert from 'struct CvPoint' to 'const int'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(21) : error C2440: '=' : cannot convert from 'struct CvPoint' to 'const int'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(21) : error C2440: '=' : cannot convert from 'struct CvPoint' to 'const int'
No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(22) : error C2664: 'cvCircle' : cannot convert parameter 2 from 'const int' to 'struct CvPoint'
No constructor could take the source type, or constructor overload resolution was ambiguous
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(23) : error C2664: 'cvCircle' : cannot convert parameter 2 from 'const int' to 'struct CvPoint'
No constructor could take the source type, or constructor overload resolution was ambiguous
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(24) : error C2664: 'cvCircle' : cannot convert parameter 2 from 'const int' to 'struct CvPoint'
No constructor could take the source type, or constructor overload resolution was ambiguous
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(25) : error C2664: 'cvCircle' : cannot convert parameter 2 from 'const int' to 'struct CvPoint'
No constructor could take the source type, or constructor overload resolution was ambiguous
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(29) : error C2143: syntax error : missing ')' before ';'
F:\C_Cpp_Pro\普通程序\moneyimg\moneyimg.cpp(29) : error C2660: 'cvPoint' : function does not take 3 parameters
对这个问题出现的真是很诡异,把rad1等变量换成rado,radt,radth,radf时,错误都没有了。我用的是opencv1.0版的。