1

構造内の構造と typedef 定義について学んでいます。通常の typedef の定義は理解できますが、この例では構造体のデータ ポイントに typedef が使用されています。

struct CGPoint{
    CGFloat x;
    CGFloat y;
};

typedef struct CGPoint CGPoint;

CGPoint rectPt;

rectPt.x=2;
rectPt.y=3;

typedef struct CGPoint CGPoint; がわかりません。CGPoint が 2 回リストされているのはなぜですか?

4

2 に答える 2

2

使用しない場合

typedef struct CGPoint CGPoint;

あなたは書くことができません

CGPoint rectPt;

しかし、代わりに明示的に書く必要があります

struct CGPoint rectPt;

C で astructを定義しても、C++ で発生するようにその型名が自動的に定義されないためです。

于 2013-08-30T01:26:17.943 に答える