Block深入淺出

2022-07-15 23:27:12 字數 516 閱讀 2937

c語言中變數有哪幾種

每種變數型別在block中的特性及原理

函式引數 

靜態變數

靜態全域性變數和全域性變數

block中改變變數值的方式

使用__block修飾

block捕獲外部變數僅僅只捕獲block閉包裡面會用到的值,其他用不到的值,它並不會去捕獲。而且block能捕獲的變數只有自動變數和靜態變數了。

block的種類

_nsconcretemallocblock

_nsconcreteglobalblock

arc下,系統會根據下面的規則決定是否將block複製到heap上

系統呼叫copy對block複製的情況

__block堆疊拷貝

clang**轉換

block 迴圈引用

發生迴圈引用的拆解方式:

使用形參的方式,將self作為引數傳遞給block

常見易混淆的場景(前提:block沒有被retain或copy的情況下,即苛刻條件中的第一條)

深入淺出sizeof

int佔 位元組,short佔 位元組 1.0 回答下列問題 答案在文章末尾 1.sizeof char 2.sizeof a 3.sizeof a 4.strlen a 如果你答對了全部四道題,那麼你可以不用細看下面關於sizeof的論述。如果你答錯了部分題目,那麼就跟著我來一起 關於sizeof...

深入淺出ShellExecute

ipconfig c log.txt應如何處理?二樓的朋友,開啟拔號網路這樣 shellexecute null,open c windows rundll32.exe shell32.dll,control rundll c windows system telephon.cpl null,sw ...

深入淺出ShellExecute

深入淺出shellexecute譯者 徐景周 原作 nishant s q 如何開啟乙個應用程式?shellexecute this m hwnd,open calc.exe sw show 或shellexecute this m hwnd,open notepad.exe c mylog.log...