2009-02-16 65 views
14

如果我宣佈一個字符串常量像這樣:整型常量

您應該創建像

// Constants.h 
extern NSString * const MyFirstConstant; 
extern NSString * const MySecondConstant; 
//etc. 

一個頭文件可以包含在使用常數的每個文件或預編譯該文件該項目的標題。

你像

// Constants.m 

NSString * const MyFirstConstant = @"FirstConstant"; 
NSString * const MySecondConstant = @"SecondConstant"; 

一個.m文件定義這些常數我該怎麼辦定義整型常量?

回答

37

用NSInteger替換NSString *。

對於任何常量類型(無論是像int/float還是像NSString或NSInteger這樣的類)都是如此。

要知道的唯一的事情是你是否希望有一個常量或指向一個常數(如withNSString),以及它如何在.m文件初始化

整數例如:

// constants.h 
extern NSInteger const MyIntegerConstant; 

// constants.m 
NSInteger const MyIntegerConstant = 666; 

(注:之所以NSInteger的,而不是隻是普通的 「詮釋」,見this post

類例如:

// constants.h 
extern MyClass* const MyClassConstant; 

// constants.m 
MyClass* const MyClassConstant= [[MyClass alloc] initWith: paramOne and:paramTwo]; 
+0

謝謝安德魯 - 這個類會被釋放嗎? – 2009-02-16 19:52:19