#defineを使った定義
objc.hの事例
YESを(BOOL)1、NOを(BOOL)0に定義
#define YES (BOOL)1
#define NO (BOOL)0
プラットフォームに応じてARITH_SHIFTを32、ないしは16に定義
#if defined(__LP64__)
typedef long arith_t;
typedef unsigned long uarith_t;
# define ARITH_SHIFT 32
#elsetypedef int arith_t;
typedef unsigned uarith_t;
# define ARITH_SHIFT 16
#endif
外部変数による定義(参照: CString定数の定義)
NSStringの例
NSMaximumStringLengthをINT_MAX-1に定義
NSString.h
FOUNDATION_EXPORT const NSUInteger NSMaximumStringLength;
NSString.m
const NSUInteger NSMaximumStringLength=INT_MAX-1;
自分のクラスに実装する場合の例
MyClass.h
extern const NSInteger MyIntergerConstant;
MyClass.m
const NSInteger MyIntergerConstant = 123;
enumによる定義
値を指定する例
NSString.h
enum {
NSCaseInsensitiveSearch = 0x01,
NSLiteralSearch = 0x02,
NSBackwardsSearch = 0x04,
NSAnchoredSearch = 0x08,
NSNumericSearch = 0x40
};
関連Blog
NSString定数の定義
数値定数の定義
0 件のコメント:
コメントを投稿