opencv编程中的奇怪bug

当运行以下代码时,

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版的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值