当前位置: 首页 > news >正文

ps与dw怎么做网站/独立网站

ps与dw怎么做网站,独立网站,网站在线客服软件,做暧暧前戏视频网站这次【Block系列】学习的内容比较难,基础不是很扎实的同学,希望可以和我一样,花多一点时间慢慢理解。我认为我的注释还是比较详细的,如果不理解的地方欢迎一起交流、留言。 1、基本使用 - (void)testBlock {// 方式一^{NSLog(&q…
  • 这次【Block系列】学习的内容比较难,基础不是很扎实的同学,希望可以和我一样,花多一点时间慢慢理解。
  • 我认为我的注释还是比较详细的,如果不理解的地方欢迎一起交流、留言。

1、基本使用

- (void)testBlock {// 方式一^{NSLog(@"--直接调用block块");}();// 方式二void (^block)(void) = ^{NSLog(@"--block");};block();// 带参数int (^block1)(int, int) = ^(int a,int b){NSLog(@"--block--%d",a + b);int c = a * b;NSLog(@"c--%d",c);return c;};block1(1,2);
}// 打印
2021-12-30 20:49:27.638055+0800 02-kvc[24397:316340] --直接调用block块
2021-12-30 20:49:27.638161+0800 02-kvc[24397:316340] --block
2021-12-30 20:49:27.638234+0800 02-kvc[24397:316340] --block--3
2021-12-30 20:49:27.638308+0800 02-kvc[24397:316340] c--2
  • block的本质上也是OC对象,它内部有个isa指针
  • block是封装了函数调用以及函数调用环境的OC对象
  • block的底层结构
  • 转换成c++代码方式请看 [这里]
// 把以上代码转成c++代码 ,只看单参数的那部分代码
// part 1
struct __block_impl {void *isa;int Flags;int Reserved;void *FuncPtr;
};// part 2
struct __ViewController__testBlock_block_impl_2 {struct __block_impl impl;struct __ViewController__testBlock_block_desc_2* Desc;int age;__ViewController__testBlock_block_impl_2(void *fp, struct __ViewController__testBlock_block_desc_2 *desc, int _age, int flags=0) : age(_age) {impl.isa = &_NSConcreteStackBlock;impl.Flags = flags;impl.FuncPtr = fp;Desc = desc;}
};
// part 3
static int __ViewController__testBlock_block_func_2(struct __ViewController__testBlock_block_impl_2 *__cself, int a, int b) {int age = __cself->age; // bound by copyNSLog((NSString *)&__NSConstantStringImpl__var_folders_yt_xssy0rbn7v9bq55cfc22sd4w0000gn_T_ViewController_9a30a7_mi_2,age);int c = a * b;NSLog((NSString *)&__NSConstantStringImpl__var_folders_yt_xssy0rbn7v9bq55cfc22sd4w0000gn_T_ViewController_9a30a7_mi_3,c);return c;}// part 4
static struct __ViewController__testBlock_block_desc_2 {size_t reserved;size_t Block_size;
} __ViewController__testBlock_block_desc_2_DATA = { 0, sizeof(struct __ViewController__testBlock_block_impl_2)};
  • 可能看起来有点复杂,但是稍微简化一下,只看impl(实现)部分
  • 底层结构如下所示:
struct __ViewController__testBlock_block_impl_2 {void *isa;int Flags;int Reserved;void *FuncPtr;struct __ViewController__testBlock_block_desc_2* Desc;int age;__ViewController__testBlock_block_impl_2(void *fp, struct __ViewController__testBlock_block_desc_2 *desc, int _age, int flags=0) : age(_age) {impl.isa = &_NSConcreteStackBlock;impl.Flags = flags;impl.FuncPtr = fp;Desc = desc;}
};
http://www.jmfq.cn/news/5288689.html

相关文章:

  • 嘉定公司网站设计/农产品营销方案
  • 四川外国语大学网站建设系/产品市场营销策划方案
  • 软件商店下载到手机/seo运营是什么
  • 如何做网站的流量分析/深圳网络推广培训
  • 动态网站开发的课题意义/西地那非片的功效与作用
  • 贵州建设职业技术学院官方网站/墨子学院seo
  • 宜宾做直销会员网站/温州seo外包公司
  • php用什么做网站服务器吗/网络营销服务商有哪些
  • 广州企业网站设计方案/十大教育培训机构排名
  • 上海网站建设团队/百度竞价登陆
  • 网站子页面怎么做/结构优化设计
  • 网站建设名字/哈尔滨seo和网络推广
  • 做册子模板素材有哪些网站/全球最牛的搜索引擎
  • 网站如何建设移动端/大概需要多少钱
  • 学校门户网站建设的意义/全网搜索
  • 婚恋交友网站制作/推广普通话的重要意义
  • 网站建设需要会什么软件/关键词优化是什么工作
  • 东台建网站/老铁外链工具
  • 太原做企业网站的/网络销售怎么干
  • 网站建设具体实施方案/中国seo高手排行榜
  • 新沂网站建设/杭州线上推广
  • 做网站的公司简介/凡科建站的优势
  • 阿里巴巴网站导航栏怎么做/成都百度提升优化
  • mysql做wp网站/线上推广平台报价
  • 百度对网站建设公司/公司网站如何制作设计
  • 学校网站的作用/软件推广是什么工作
  • seo上海推广公司/外贸网站如何推广优化
  • 网站建设技术合同/seo营销优化软件
  • 网站改版需求分析/百度知道登录入口
  • 男女生做恶心的网站/app推广方法及技巧