我已閱讀Objective-C
中關於常量的一些文章,並且我得出結論,最好創建一個頭和一個實現。Objective-C中的常量類
問題是這樣的。我應該延長什麼課程? NSDocument
? Xcode不允許我創建沒有子類的類。
我已閱讀Objective-C
中關於常量的一些文章,並且我得出結論,最好創建一個頭和一個實現。Objective-C中的常量類
問題是這樣的。我應該延長什麼課程? NSDocument
? Xcode不允許我創建沒有子類的類。
我會說簡單地擴展NSObject
。
我不覺得NSDocument
適合這裏的目的,因爲它已經有其特定的目的,而不是與你在這裏做什麼有關。根據NSDocument
的文檔:
NSDocument
抽象類定義了OS X文檔的接口。文檔是一個對象,它可以在內部表示顯示在窗口中的數據,並且可以從文件或文件包中讀取數據並將數據寫入文件或文件包。
好的。但爲什麼我需要擴展NSObject?只是好奇心 – placplacboom 2014-11-01 22:28:38
NSObject是大多數Objective-C類層次結構的根類。它定義了很多目標c對象的常見行爲,如alloc,init,copy等。 – 2014-11-01 22:33:48
我想你是指一個地方聲明一些全局常量。如果是這樣的話,那麼你並沒有真正定義一個類。
更具體地說,如果你的常量只是原始數據和字符串。您可以在.h文件中定義它們並在.m文件中聲明它們。
Constants.h
extern NSString *const ConstString;
extern const NSInteger ConstInt;
Constants.m
NSString *const ConstString = @"asdasd";
const NSInteger ConstInt = 12;
然而,如果你需要定義常量的自定義對象。那麼你可能需要一個自定義的單例類。你可以通過單例的方法來達到常量。 singelton類應該是NSObject
的一個子類,因爲正如@Peter Pei Guo所說,這是所有Objective-C類的基類。
什麼是「常量級」?它與NSDocument有什麼關係? – 2014-11-01 22:36:21