2010-02-11 75 views
1
下面

是一個非常簡單的代碼段,但我無法理解爲什麼它惡癖,可以請你告訴我是什麼錯誤意味着:線掃描OpenCV的


CvSize iSize; 
iSize= cvGetSize(I1); 
CvLineIterator *iter ; 
CvPoint p1,p2; 
long *arrH = new long[iSize.height + 1]; 
long *arrV = new long [iSize.width + 1]; 




for(int i=0; i<=iSize.height;i++) 
{ 

    p1.y = i; p2.y=i; 
    p1.x = 0; p2.x=iSize.width; 

    arrH[i] =0; 
    int l = cvInitLineIterator(I1,p1,p2,iter,4,0); 
    for(int j=0;j<l;j++) 
    { 
     arrH[i]+=iter.ptr; 
     CV_NEXT_LINE_POINT(iter); 

    } 

    fprintf(f1,"%d \n",arrH[i]); 

} 

錯誤形式: '.ptr'的左邊必須有class/struct/union 我該如何解決它們?

回答

3

我想這:

CvLineIterator *iter ; 

應該是:

CvLineIterator iter ; 

這:

cvInitLineIterator(I1,p1,p2,iter,4,0); 

應該是:

cvInitLineIterator(I1,p1,p2,&iter,4,0);