0

CGPointジャンクションの通過について別の質問があります。

(CGPoint[]) displayPoints:(CGPoint) startPoint 
                        withEnd:(CGPoint) endPoint
                 withBaseRotate:(Boolean) baseRotate {

// do some stuf with four or six points
// create a array of the points and return - it


    CGPoint ourPoints[] = {
        CGPointMake(point1.x, point1.y),
        CGPointMake(point2.x, point2.y),
        CGPointMake(point3.x, point3.y),
        //... some more points
    } ;

  return ourPoints[];
}

なぜこれが機能しないのですか?

4

1 に答える 1

0

メモリに格納されている場所へのポインタを返す必要があります

(const CGPoint *) displayPoints:(CGPoint) startPoint 
                  withEnd:(CGPoint) endPoint
           withBaseRotate:(Boolean) baseRotate {

    CGPoint ourPoints[] = {
        CGPointMake(point1.x, point1.y),
        CGPointMake(point2.x, point2.y),
        CGPointMake(point3.x, point3.y),
        //... some more points
    } ;

  return ourPoints;
}

CFContextAddLines の署名を見ると、それが使用されていることがわかります。これで、コンパイラはメモリへのポインターを返すことに対して警告をスローします...したがって、これが好ましい方法であるかどうかはわかりませんが、質問に答えます。

于 2012-07-25T13:53:02.743 に答える