oc 29 可變陣列

2021-09-09 01:42:36 字數 1220 閱讀 9949

/*

* 陣列長度不固定,可以隨便往裡面新增或者刪除元素。

1.建立陣列

nsmutablearray *arraym = [nsmutablearray array]

2.給陣列新增元素(只能是oc物件)

- (void)addobject:(id)anobject;

3.如何刪除陣列元素

*/#import

int main(int argc, const

char *ar**)

return0;

}/*@synthesize name = _b; //相當於操作_b的值

-(void)setname:(nsstring *) name

-(nsstring *)name

注意:在4.4之前,@property和@synthesize成對出現

2)@property 在xcode4.4之後(@property增強)

增強使用:

@property int score;

1).**件中 幫我們宣告 setscore(setter) 和score(getter)方法

2).m 中幫我們生成_score的私有變數(在外部不能訪問,不能被子類繼承)

3).m 中幫我們實現 get和set方法

3、動態型別&id型別

動態型別:程式在執行的時候,才能確定物件屬於什麼型別

靜態型別:程式編譯的時候,就確定了物件的型別

動態型別的體現: 多型,父類指標可以指向子類物件

nsobject 是所有類的基類

nsobject *obj = [dog new];

父類呼叫子類特有的方法

[(person *)obj eat];

//id型別,id型別又被稱為 萬能指標。

id obj; //執行時檢查

obj = [car new]; //例項變數 _speed

[obj stop];

//id型別呼叫子類的方法的時候不要強制型別轉換,nsobject *型別呼叫子類方法的時候要強制型別轉換。

6、構造方法的使用

[person new];

-> [person alloc];//空間申請完後,不能立即使用,有可能會導致意想不到的錯誤

-> [[person alloc] init];

[person new]; 會把我們的成員變數的值,預設的設定為0

OC不可變陣列NSArray詳解

1 nssarray 子類nsmutablearray nsset 子類nsmutableset nsdictionary 子類nsmutabledictionary 這幾個類都是集合類。2 c語言型別的陣列只能存放一種型別的資料。為此引入oc陣列nsarray,以物件導向的方法運算元據,可以存放各...

OC可變陣列的常用操作

可變陣列的初始化 可變陣列,繼承於不變陣列nsarry 不可變陣列的方法都可以用於可變陣列 建立乙個空的可變陣列 nsmutablearray arr nsmutablearray alloc init 給乙個初始化容量 nsmutablearray arr1 nsmutablearray allo...

C STL deque可變陣列

deque資料應該很多,這裡不多所了,直接一點上程式吧!include include include include 用於distance deque模板,deque迭代器 using namespace std stl deque 是乙個動態陣列,與vector類似 可在開頭與末尾插入 刪除資料...