opencv报错—error C2872: ACCESS_MASK: 不明确的符号
平時(shí)自己的程序在小組的QT項(xiàng)目里邊調(diào)試,懶人我突然想把自己那段移出來單獨(dú)調(diào)試優(yōu)化,畢竟每次把工程代碼搬來搬去,萬一哪天失手了,不知從何處補(bǔ)救。
在清除掉一些不必要的接口函數(shù)還有不必要的參數(shù)后,點(diǎn)擊調(diào)試,出現(xiàn)這樣一個(gè)錯(cuò)誤提示:
error C2872: ACCESS_MASK: 不明確的符號(hào)。
有點(diǎn)懵,來不及懵。
- 當(dāng)一個(gè)函數(shù)沒有在編譯頭文件中找到定義時(shí),一般就會(huì)報(bào)錯(cuò):未標(biāo)識(shí)的符號(hào)。
- 至于報(bào)錯(cuò)不明確的符號(hào),那可能是因?yàn)?#xff0c;工程的編譯文件里有多個(gè)該符號(hào)定義。
筆者沒那么聰明,是在前輩基礎(chǔ)經(jīng)驗(yàn)上總結(jié)的。
opencv3.0的cv “ACCESS_MASK”沖突
不想打開鏈接可以直接看原文截圖:
瞧見沒?是因?yàn)閣innt.h里邊定義了cv,它的cv空間里有一個(gè)符號(hào)叫ACCESS_MASK;
opencv函數(shù)里邊也定義了命名空間cv,它的cv空間里也有一個(gè)符號(hào)叫ACCESS_MASK。
那么我的項(xiàng)目如果同時(shí)包含這兩個(gè)頭文件,計(jì)算機(jī)是否知道我要調(diào)用哪個(gè)ACCESS_MASK嗎?
回想平時(shí)寫代碼習(xí)慣性的:
using namespace std; using namespace cv;因?yàn)閛pencv里邊很多函數(shù),諸如imread,imshow,waitkey,Rect,Point,在使用頻率上比較高,每次把它所在的命名空間書寫有點(diǎn)麻煩,所以就習(xí)慣性的一次性了。
可惜懶人沒懶福,這樣的報(bào)錯(cuò)遇到過很多次,一直在回避。
改完這六百多個(gè)報(bào)錯(cuò),以后還是一次性寫清楚吧,不要給自己留隱患了。
總結(jié)
以上是生活随笔為你收集整理的opencv报错—error C2872: ACCESS_MASK: 不明确的符号的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 江苏统考计算机英语作文,2017年高考江
- 下一篇: 用Python画环环相扣的奥运五环