#import "d.h"
@inte***ce a : nsobject
bool myboolvalue1; //在這裡宣告的,叫做成員變數(member variable),如果單單是在{}裡宣告而沒有@property的話,
//這個變數只能在類內部訪問
bool myboolvalue2;
d *myvalue3;
d *myvalue4;
//在@inte***ce括號中定義乙個變數並用@property 重複定義一次是很普遍的,實際上不是必要的。用@property和@synthszie就夠了,
//因為在用@synthsize合成這個屬性的讀寫方法時就會建立乙個變數。
@property(nonatomic, readwrite, assign) bool boolvalue1; //公有布林變數 , 在.h裡面使用@property的變數就可以被外部類呼叫了
@property(nonatomic, readwrite, retain) d *value3; //公有物件指標
- (void)function1; //公有函式的宣告
@end
#import "a.h"
nsstring *const string1 = @"abc"; //一些常量字串的定義
nsstring *string2 = @"aaaaa"; //一些字串的定義
static b *b = nil; //b類指標的定義
typedef enum
csiphonevideo,
csipadvideo
}csmode; //私有列舉變數定義
#define ksidefault 0 //巨集定義
class c : public d
public:
c() {};
}; //c++類
extern "c"
@inte***ce a()
- (void)fuction2; //私有函式的宣告
@property (nonatomic, readwrite, assign) bool boolvalue2; //私有變數的property是在.m檔案裡寫的
@property (nonatomic, readwrite, retain) d *value4; //私有變數
@end
@implementation a
//@synthsize gamecenter = _gamecenter;
//預設情況下,sdk已經為gamecenter設定了乙個同樣名字的變數,但如果你要設定不同名字的變數則使用這種方法
//gamecenter 屬性,說明了不管什麼值被分配給這個屬性,都會儲存到_gamecenter這個變數中。
//據千鋒的第2節語法課課程的講解,這樣寫之後可以使得 @synthsize 時內部getter方法會展成
1 -(int)gamecenter
2
而直接寫 @synthsize gamecenter;
setter函式會在內部展開成
1 -(int)gamecenter
2
注意到:函式名和變數名是一樣的。在斯坦福的課程中,白鬍子教授也模糊的說道這樣的同名有可能帶來bug,具體什麼bug他沒說,我也沒見過,所以還是養成這樣寫的習慣為好。其他語言的getter函式 一般會在變數前加 get;但oc沒有,可能是為了與其他語言做區分,算是oc的特色,結果卻帶來這麼個麻煩。
@synthesize boolvalue1 = myboolvalue1;
@synthesize boolvalue2 = myboolvalue2;
@synthesize value3 = myvalue3;
@synthesize value4 = myvalue4;
//初始化函式
- (id)init
self = [super init];
if (self != nil)
self.boolvalue1 = no;
self.boolvalue2 = no;
//公有函式實現
- (void)function1
//分配空間時用my*** = [[***xx alloc] init];
myvalue3 = [[d alloc] init];
myvalue4 = [[d alloc] init];
//賦值時用self.*** = ***xx,如果使用了arc的話,用不用self.都一樣的
self.value3 = self.value4;
self.boolvalue1 = self.boolvalue2;
//私有函式實現
- (void)function2
- (void)dealloc
//assign型別的變數就不用在這玩了,因為沒有引用計數的加減
//有alloc過的變數,注意這裡的用法,都是用到my,如果沒有設定my的話,就直接用[value3 release], 不能用[self.value3 release]
if (myvalue3 != nil)
[myvalue3 release];
myvalue3 = nil;
if (myvalue4 != nil)
[myvalue4 release];
myvalue4 = nil;
[super dealloc];
}@end
ios設定字型 黑體,加粗等
ios開發中,經常用到uilable,此時如何讓uilable的字型變化為不同的顏色,樣式,從而增加ui美感呢?下面我進行了總結和歸納,內容來自於網路,當時經過我自己的整理.希望對我自己和大家有所幫助。1.設定黑體,粗體,斜體等都需要用到下面的方法。label.font uifont fontwit...
IOS中設定全域性變數
有幾種方法 some developers recommend use singleton patter ref link 方法1 使用靜態變數 不推薦 方法2 使用singleton pattern ref link 例 定義和使用乙個全域性變數 islogin inte ce property ...
IOS中設定全域性變數
有幾種方法 some developers recommend use singleton patter ref link 方法1 使用靜態變數 不推薦 方法2 使用singleton pattern ref link 例 定義和使用乙個全域性變數 islogin inte ce property ...