id和NSObject 的區別和聯絡

2021-06-20 06:14:07 字數 369 閱讀 2868

在ios的sdk標頭檔案中,能看到一些定義,在objc.h中,可以看到id的定義如下

typedef struct objc_class *class

typedef struct objc_class*id;

在nsobject.h中,可以看到nsobject類的定義如下

@inte***ce nsobject{

class isa

+ (void)load;

+ (void)initialize;

兩個型別都包含有class isa,但nsobject同時包含了一些其他的方法,並需要實現nsobject協議。

所以nsobject *可以用id來表示。但id不能用nsobject *來表示

iOS中id與NSObject 和id的區別

1.我們來看看id的定義,它就是乙個指標,它可以指向的型別不僅限於nsobject 1typedefstructobjc class class 2typedefstructobjc object id 2.nsobject 就是 nsobject型別的指標了,它範圍較小。3.id是指標,它要求它指...

ID和CLASS的區別

在編寫外部css過程中,經常會會用到id與class屬性,即使用點號 建立class選擇器,使用hash符號 建立id選擇器。id是不能重複的,所以在xhtml的結構中,大結構一定是用id。比如標誌 導航 主體內容 版權。id需要具有唯一性,並且盡量在外圍使用。而class具有可重複性,並且盡量在結...

標籤中id和name的作用和區別

標籤中id和name的作用和區別 id要符合標識的要求,比如大小寫敏感,最好不要包含下劃線 因為不相容css 而name基本上沒有什麼要求,甚至可以用數字。id就像是乙個人的身份證號碼,而name就像是他的名字,id顯然是唯一的,而name是可以重複的。標籤規定使用者可輸入資料的輸入字段。根據不同的...