學習筆記 OC的資料型別 block 使用

2021-06-29 14:18:30 字數 819 閱讀 3877

一、block基本使用

block用來儲存一段**

block標誌:^

block類似於函式:

1、可以儲存**

2、有返回值

3、有形參

定義block變數:void (^myblock)() = ^;

執行:myblock();

帶引數和返回值:

4、用dypedef定義block型別

dypedef int (^myblock) (int,int);

myblock sumblock = ^(int a, int b)

二、block總結

1、定義block變數

int (^sumblock)(int, int);

void (^myblock)();

2、用block封裝**

^(int a, int b)

^()3、block訪問外部變數

***block內部可以訪問外部變數

***預設情況下,block內部不能修改外面的區域性變數

***給區域性變數加上__block關鍵字,這個區域性變數就可以在block內部修改

4、利用typedef定義block型別

typedef int (^myblock) (int, int);

以後就可以利用這個型別來定義變數。

OC資料型別

oc是增強了c的特性,所以在變數和基本資料型別上基本與c一致。在oc中變數命名有如下規則 由字母 數字 下劃線 符號組成 必須以字母 下劃線 符號開頭 大小寫敏感 在oc中定義變數的時候不能使用oc的保留字,oc的保留字如下 oc中有如下基本資料型別 int 宣告整型變數 double 宣告雙精度變...

OC中的資料型別

在objective c中,有一些我們之前並不熟悉但是經常見到的資料型別,比如id nil nil sel等等。在很多文章裡,我們都見過這些資料型別的介紹,但是都沒有說的太清楚。這篇文章從最底層的定義開始,介紹一下這些型別到底是怎麼定義的,這會幫助我們更加深入地了解objective c。objec...

OC基礎資料型別 NSSet

1 集合 集合 nsset 和陣列 nsarray 有相似之處,都是儲存不同的物件的位址 不過nsarray是有序的集合,nsset是無序的集合。集合是一種雜湊表,運用雜湊演算法,查詢集合中的元素比陣列速度更快,但是它沒有順序。nsset set nsset alloc initwithobject...