0

私は、Apple が行っていることCGRectMake()や他のすべての ~Type~Make()機能と同様のパターンを実装したいと考えています。CGRectMake のコードは?

それはただですか:

inline function CGRectMake(CGFloat x,  CGFloat y, CGFloat width, CGFloat height) {
    CGRect rect;
    rect.x = x;
    rect.y = y;
    rect.width = width;
    rect.height = height;
    return rect;
}

それとも、それ以上のことはありますか (そして学ぶ必要があります!)?

編集 コンストラクタにしない理由はありますか?

4

2 に答える 2

2

CGRectMakeXcodeをコマンドクリックすると、その実装が表示されます。あなたはほとんどそれを持っていました;-)

CG_INLINE CGRect
CGRectMake(CGFloat x, CGFloat y, CGFloat width, CGFloat height)
{
  CGRect rect;
  rect.origin.x = x; rect.origin.y = y;
  rect.size.width = width; rect.size.height = height;
  return rect;
}
于 2012-10-11T11:37:34.873 に答える
1

これはstructクラスではないため、実際にはそれ以上のものはありません。であるためstruct、スタックに格納されます。

このCGRectMake関数は、make a の便利なメソッドにすぎませんCGRect


また、メソッドをマウスでクリックして実装する方法について、 Matthias Bauchによる優れた回答も参照してください。cmd

メソッドの説明を取得するには、 als alt+ マウス クリックを使用できます。

于 2012-10-11T11:33:09.160 に答える