[問題] vector 與opencv CvMat

看板C_and_CPP (C/C++)作者 (Smallville)時間13年前 (2013/03/22 02:42), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
大家好, 我的問題是這樣的 我宣告了一個 CvMat* 的型別 Input 然後我用亂數值傳入3x1的矩陣 tmp 中 再依序將 tmp push_back 進 Input 裡 但是這樣產生的結果會導致所有的 Input 裡所有的值都會是同一組 根據我對google查詢結果的理解 應該是因為我 push_back 進去的是tmp的指標 他指向的位置 皆相同 所以導致 Input 中每組3x1矩陣皆相同 不知道各位能不能幫忙解決我的問題 感謝 以下是我的code vector<CvMat *> Input; CvMat *tmp=cvCreateMat(3,1,CV_64FC1); for(int N=0;N<num;N++) { for(int i=0;i<3;i++) { *((double*)CV_MAT_ELEM_PTR(*tmp, i,0))=(rand()%10); } Input.push_back(tmp); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.121.43

03/22 17:13, , 1F
請善用Mat 然後將Mat宣告在for迴圈裏面
03/22 17:13, 1F
文章代碼(AID): #1HIrHyoh (C_and_CPP)
文章代碼(AID): #1HIrHyoh (C_and_CPP)