天天看點

Blocks塊程式設計指南簡介開始使用塊

你應該通過閱讀這篇文檔來學習如何在c、c++、objective-c中使用塊。

這篇文檔包括以下章節:

下面的部分将使用執行個體帶你開始學習塊

我們使用 ^ 操作符去聲明一個塊變量的開始。塊主體使用{}(本例使用c語言,結尾使用;)

下圖解釋此例。

Blocks塊程式設計指南簡介開始使用塊

<a href="http://upload-images.jianshu.io/upload_images/999329-ad386e08a041cebc.jpg?imagemogr2/auto-orient/strip%7cimageview2/2/w/1240">blocks.jpg</a>

注意,塊可以使用同一作用域内定義的變量

如果你聲明了一個塊變量,你可以把它當做函數來使用:

很多時候,我們并不需要直接聲明一個塊變量,你隻需要提供一個内聯塊來作為參數,下例中使用了函數 qsort_b,qsort_b函數和标準函數qsort_r相類似,但是它提供了一個塊來作為參數。

塊的一個強大特性是可以改變同一作用域内的變量,如果你聲明一個變量時使用block,你就可以在塊的作用域内改變它的值,下例中你可以使用block的變量來計算有多少個字元串值相同,在塊中使用currentlocale作為隻讀變量。

等待繼續更新…

繼續閱讀