9

はい、私はこれを見ました:

メソッドが構造体を返す場合、Mac OS X ABI関数呼び出しガイドで定義されているように、レジスタに返されます。nilに送信されるメッセージは、構造体のすべてのフィールドに対して0.0を返します。他の構造体データ型はゼロで埋められません。

わからない。

4

1 に答える 1

15

最近のバージョンのLLVMコンパイラー(Xcode 4.2以降)を使用している場合は、そうです。nil構造体を返すメソッドを使用してメッセージを送信すると、ゼロで埋められた構造体が生成されます。の場合CGRect、それはに等しい長方形を意味しCGRectZeroます。

出典:ObjCランタイムでAppleで働いているGregParker

于 2012-04-07T04:55:51.643 に答える