使用vs+opencv時R6010 -abort() has been called問題的解決

使用vs+opencv運行代碼時,大多數情況會出現R6010的錯誤。
網上大多數解釋爲——出現的原因有:
1.非法指針訪問和內存泄漏
2.設置的指針範圍跟你運行的不對
3.指針訪問內存越界出現問題。
4.因爲不支持中文。
5.內存不夠分配
6.多線程訪問資源出的問題。
7.檢查exe和dll是否混用的不同版本的crt
解決方式:
1.檢查申請的空間沒有釋放
2.檢查堆棧空間是否已經被全部分配滿,建議每次內存分配儘量不要太大,並且記得釋放
3.指針指向了不可預期的內存位置

以上可能是在vs中出現的問題,目前我還不懂。
還有一種解釋:
當項目程序需要加載一個模型文件,而路徑上設的是相對路徑,即直接放在工程目錄下的。而文件加載時沒把路徑設成絕對路徑,導致opencv函數在讀取文件的時候找不到文件,讀取進來的模型是空的。
常見的opencv出這種錯誤的原因:
1.指針問題,指針越界,內存泄露之類的。
2.參數問題,很多時候opencv函數調用不準確,參數和函數不匹配。
3.路徑問題,如果有讀取文件之類的話這種得重點注意。

事實證明,對於小白的我來說,一般都忘記把需要讀取文件放對地方。一定要把文件放在工程目錄下,如F\vs\test1\test1。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章