2
NSRect構造体に値があるかどうかを確認できません。NSRectがnullであるかどうかを確認します。
if(!myRect)// produce an error
if(myRect== nil) //this's not a pointer...can't works.
正しい方法はありますか?
NSRect構造体に値があるかどうかを確認できません。NSRectがnullであるかどうかを確認します。
if(!myRect)// produce an error
if(myRect== nil) //this's not a pointer...can't works.
正しい方法はありますか?
私はNSIsEmptyRect
機能がより快適だと思いますか?
ゼロ矩形でチェックしたい場合は、
NSRect
は、ポインタではなく構造体であるため、またはNULL
にすることはできません。ただし、矩形がNSZeroRect
と等しいかどうかを確認するには、if(NSEqualRects(myRect, NSZeroRect))
を使用します。
NSZeroRectでは、myRectが '{{0.0、0.0}、{0.0、0.0}}と等しいかどうかを確認します。 '構造体がゼロでない場合に構造体が初期化されているかどうかを確認する必要があります。 – MatterGoal
RDBMSとは異なり、メモリには本来「無効な」値はありません。 NULLは単純に0で、ポインタの値であるときには特別な意味が与えられます。しかし、あなた自身を選択しない限り、整数のためのものはありません(0は単なる整数です)。 NSZeroRectは賢明な選択です。 – LaC
矩形のコンポーネントは浮動小数点数なので、NaNをコンポーネントとして使用して、矩形の各メンバーに 'isnan'をテストする関数を書くことができます。 (等価性のテストは機能しません:NaNはすべての数値だけでなく、NaN自体にも不等式です!) –