1

以下は非常に単純なコード セグメントですが、なぜそれがクリビングしているのか理解できません。エラーの意味を教えてください。


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]);

}

フォームのエラー: left of '.ptr' must have class/struct/union どうすれば対処できますか?

4

1 に答える 1

3

私はこれだと思います:

CvLineIterator *iter ;

する必要があります:

CvLineIterator iter ;

この:

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

する必要があります:

cvInitLineIterator(I1,p1,p2,&iter,4,0);
于 2010-02-11T06:33:25.370 に答える