[問題] 從主程式移出函數遇到exception thrown

看板C_and_CPP (C/C++)作者 (我來搞事了)時間2年前 (2022/01/25 10:19), 2年前編輯推噓4(4016)
留言20則, 6人參與, 2年前最新討論串1/1
各位大大好 我最近在使用opencv套件時遇到exception thrown的問題 原本可編譯執行程式碼如下 int main (int argc,char*argv[ ]) { …… cv::Mat cv_image(cv::size(1024,1024), cv_16UC1, imgBuffer_ptr, cv::Mat::AU TO_STEP); cv:: nameWindow(" " , 1); imshow(" ",cv_image); waitKey(20); …… } 其中imgBuffer_ptr資料型態是Word* 指向sdk提供的相機儲存圖片的位址 但當我只是改成這樣 cv::Mat cvshow(WORD*addbuffer) { cv::Mat cv_image(cv::size(1024,1024), cv_16UC1, addbuffer, cv::Mat::AU TO_STEP); cv:: nameWindow(" " , 1); imshow(" ",cv_image); waitKey(20); } int main(int argc,char*argv[ ]) { …… cvshow( imgBuffer_ptr); …… } 執行後就會跳出c++ exception at memory location的error 想請問各位,我該如何改掉這錯誤啊? 第一直覺是ptr的問題… 但又不懂錯在哪 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.136.5.5 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1643077172.A.081.html ※ 編輯: Vvvahc (114.136.5.5 臺灣), 01/25/2022 10:19:54 ※ 編輯: Vvvahc (140.112.174.64 臺灣), 01/25/2022 10:21:22

01/25 10:49, 2年前 , 1F
你傳入的addbuffer沒有用到 function裡面還是用imgBuffer_
01/25 10:49, 1F

01/25 10:49, 2年前 , 2F
ptr?
01/25 10:49, 2F
※ 編輯: Vvvahc (140.112.174.64 臺灣), 01/25/2022 11:08:02

01/25 11:10, 2年前 , 3F
我function內是用addbuffer才對,用手機編輯沒注意到XD
01/25 11:10, 3F

01/25 11:10, 2年前 , 4F
已改正
01/25 11:10, 4F

01/25 11:17, 2年前 , 5F
不過還是不知道錯在哪( _ )
01/25 11:17, 5F

01/25 12:38, 2年前 , 6F
cvshow() return ?
01/25 12:38, 6F

01/25 12:48, 2年前 , 7F
沒return cv::Mat 或是改成void?
01/25 12:48, 7F

01/25 12:50, 2年前 , 8F
你的 imgBuffer_ptr 是怎麼宣告的?空間是如何配置的?
01/25 12:50, 8F

01/25 12:50, 2年前 , 9F
另外,是全域還是區域變數?
01/25 12:50, 9F

01/25 14:33, 2年前 , 10F
return我等下來試試 void我昨天有試過也是不能…
01/25 14:33, 10F

01/25 14:34, 2年前 , 11F
imgBuffer_ptr 是我宣告word*imgBuffer_ptr 後,丟到sdk
01/25 14:34, 11F

01/25 14:34, 2年前 , 12F
提供的copy function去得到指標位址
01/25 14:34, 12F

01/25 14:35, 2年前 , 13F
我是設定成區域變數
01/25 14:35, 13F

01/26 23:12, 2年前 , 14F
你沒有return編譯得過去嗎
01/26 23:12, 14F

01/26 23:16, 2年前 , 15F
我只是好奇,我記得VS很聰明非void沒return會跳紅字
01/26 23:16, 15F

01/26 23:22, 2年前 , 16F
程式碼你可能需要提供更完整一些
01/26 23:22, 16F

01/26 23:22, 2年前 , 17F
我稍看一下沒有看到有什麼語法邏輯錯誤
01/26 23:22, 17F

01/28 17:20, 2年前 , 18F
感謝h大的站內信
01/28 17:20, 18F

01/28 17:20, 2年前 , 19F
這邊更新一下,mat要用return才能編譯 (會不會成功執行是另
01/28 17:20, 19F

01/28 17:20, 2年前 , 20F
一回事…)
01/28 17:20, 20F
文章代碼(AID): #1Xxruq21 (C_and_CPP)
文章代碼(AID): #1Xxruq21 (C_and_CPP)