1.捕獲auto變量
auto變量,實(shí)質(zhì)上就是局部變量的一種,默認(rèn)為auto類型,離開作用域就會被銷毀。例如:Int age = 0; 實(shí)質(zhì)上是 auto Int age = 0

創(chuàng)建帶auto類型參數(shù)的block

帶有auto類型成員變量的__main_block_impl_0的結(jié)構(gòu)
注:其中構(gòu)造函數(shù)參數(shù)括號后面的用" : " 隔開的age(_age),本質(zhì)上就是age = _age;
2.捕獲static變量

創(chuàng)建帶static類型參數(shù)的block

帶有static類型成員變量的__main_block_impl_0的結(jié)構(gòu)

函數(shù)調(diào)用時(shí)獲取的是變量的指針
3.變量捕獲總結(jié)

auto和static變量捕獲對比
4.小小的疑問:為什么要捕獲局部變量?

捕獲局變量的原因說明
內(nèi)部實(shí)現(xiàn)為跨函數(shù)訪問

跨函數(shù)訪問局部變量,無法實(shí)現(xiàn),必須有一個保存局部變量的方法