之間有什麼最好的選擇:從內存消耗點定義Vs的靜態常量Vs的NSString的 - 的觀點記憶點
#define kYes @"Yes"
和
static NSString *const kYes = @"Yes";
而且
NSString *kYes = @"Yes";
視圖。請記住,應用程序中會有數千個常量。
之間有什麼最好的選擇:從內存消耗點定義Vs的靜態常量Vs的NSString的 - 的觀點記憶點
#define kYes @"Yes"
和
static NSString *const kYes = @"Yes";
而且
NSString *kYes = @"Yes";
視圖。請記住,應用程序中會有數千個常量。
從內存的角度來看 - 靜態變量更好,因爲它被引用一次。 #define會將字符串插入到所有的出現中,由此 - 乘以內存使用...(這是除非GCC優化相同的常量字符串出現,它實際上可能會發生 - 在這種情況下 - 沒有區別)
你的意思是'#define kYes @「是」'? – kennytm 2011-03-30 08:13:48