您好,登錄后才能下訂單哦!
1、簡(jiǎn)介
Objective-C中使用常量有兩種方式,一種是通過(guò)C的的預(yù)處理#define來(lái)定義,通過(guò)此方式預(yù)定義的常量,在編譯器編譯的時(shí)候用#define定義的內(nèi)容代替。第二種是通過(guò)C的關(guān)鍵字extern,表示這個(gè)變量已經(jīng)聲明,這里只是引用。這種做法的其中一個(gè)好處是修改了變量的內(nèi)容,不會(huì)引用重新編譯。
2、實(shí)踐
第一種方式:建立一個(gè)頭文件如Constants.h,不需要.m文件,在此文件中直接使用#define定義,在需要用到里面常量的文件中,#import該文件即可,代碼如下:
//NSString類型 #define MY_CONSTANT1 @"my_constant" //string類型 #define MY_CONSTANT2 "my_constant" //××× #define MY_CONSTANT3 100
第二種方式:建立文件Constants.h,需要.m文件,在.h文件中實(shí)現(xiàn)定義,在.m文件中進(jìn)行賦值。在需要使用此常量的地方#import此文件即可。其中const表示變量不可修改,是個(gè)常量。代碼如下:
Constants.h文件代碼如下:
#import <Foundation/Foundation.h> extern NSString * const MY_CONSTANT1; @interface Constants : NSObject { } @end
Constants.m文件代碼如下:
#import "Constants.h" NSString * const MY_CONSTANT1 = @"my_constant1"; @implementation Constants @end
假如常量只是在本文件中用到,可以直接在.m文件中定義,代碼如下:
#import "ViewController.h" NSString * const INNER_CONSTANT1 =@"just use in this file"; @implementation ViewController - (void)loadView { NSLog(@"load view: %@,,INNER_CONSTANT1); }
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。