1
我需要閱讀OpenCV中墊讀取二維數組的OpenCV墊
int main()
{
Mat matrix;
double **theArray;
int numOfRows,numOfCols;
cin >> numOfRows ;
cin >> numOfCols ;
theArray = AllocateDynamicArray<double>(numOfRows,numOfCols);
matrix = Mat(numOfRows,numOfCols,CV_64FC1,&theArray);
string filename = "IN.xml";
FileStorage fs1(filename, FileStorage::WRITE);
fs1.open(filename, FileStorage::WRITE);
fs1 << "locsINMat" << matrix;
fs1 << "descriptorsINMat" << matrix;
fs1.release();
cout << "---------------------" << endl;
FreeDynamicArray(theArray);
}
template <typename T>
T **AllocateDynamicArray(int nRows, int nCols)
{
T **dynamicArray;
dynamicArray = new T*[nRows];
for(int i = 0 ; i < nRows ; i++)
dynamicArray[i] = new T [nCols];
return dynamicArray;
}
template <typename T>
void FreeDynamicArray(T** dArray)
{
delete [] *dArray;
delete [] dArray;
}
動態二維數組我得到這個異常:在GP.exe在0x5d08f1aa 未處理的異常:0000005:訪問衝突讀取位置0x003f4000。
數組是動態的 我使用相同的變量分配數組的大小 – RBM 2013-03-08 12:16:55
您可以發佈更多的代碼,以便我們可以看到你是否爲動態數組分配內存? – 2013-03-08 12:22:47
我已經在問題nw – RBM 2013-03-08 12:41:18