注册 登录
主题 : 【小测试】你真的知道blocks在Objective-C中是怎么工作的吗?(获奖公布)
级别: 管理员

状态: 连续签到 - [6天]
UID: 98590
精华: 0
发帖: 2726
可可豆: 14816 CB
威望: 7953 点
在线时间: 8940(时)
注册时间: 2010-10-18
最后登录: 2018-06-06
0 楼:  发表于: 2013-08-28 14:17    发自: Web Page

【小测试】你真的知道blocks在Objective-C中是怎么工作的吗?(获奖公布)   

管理提醒: 本帖被 ccsupport 执行加亮操作(2013-12-03)
你真的知道blocks在Objective-C中是怎么工作的吗?

来做个小测试看看吧。

所有的例子都以下版本上测试过。

Apple clang version 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)
Target: x86_64-apple-darwin11.4.2
Thread model: posix

答对三个以上的有机会获得COCO熊一只!一共10只小熊,用你的本事来领回家吧~




例子1

void exampleA() {
  char a = 'A';
  ^{
    printf("%c\n", a);
  }();
}




这个例子:

A.始终能够正常运行                B.只有在使用ARC的情况下才能正常运行
C.不使用ARC才能正常运行   D.永远无法正常运行


例子2:

void exampleB_addBlockToArray(NSMutableArray *array) {
  char b = 'B';
  [array addObject:^{
    printf("%c\n", b);
  }];
}
 
void exampleB() {
  NSMutableArray *array = [NSMutableArray array];
  exampleB_addBlockToArray(array);
  void (^block)() = [array objectAtIndex:0];
  block();
}



A.始终能够正常运行                B.只有在使用ARC的情况下才能正常运行
C.不使用ARC才能正常运行   D.永远无法正常运行



例子3

void exampleC_addBlockToArray(NSMutableArray *array) {
  [array addObject:^{
    printf("C\n");
  }];
}
 
void exampleC() {
  NSMutableArray *array = [NSMutableArray array];
  exampleC_addBlockToArray(array);
  void (^block)() = [array objectAtIndex:0];
  block();
}



A.始终能够正常运行                B.只有在使用ARC的情况下才能正常运行
C.不使用ARC才能正常运行   D.永远无法正常运行


例子4

typedef void (^dBlock)();
 
dBlock exampleD_getBlock() {
  char d = 'D';
  return ^{
    printf("%c\n", d);
  };
}
 
void exampleD() {
  exampleD_getBlock()();
}



A.始终能够正常运行                B.只有在使用ARC的情况下才能正常运行
C.不使用ARC才能正常运行   D.永远无法正常运行



例子5

typedef void (^eBlock)();
 
eBlock exampleE_getBlock() {
  char e = 'E';
  void (^block)() = ^{
    printf("%c\n", e);
  };
  return block;
}
 
void exampleE() {
  eBlock block = exampleE_getBlock();
  block();
}




A.始终能够正常运行                B.只有在使用ARC的情况下才能正常运行
C.不使用ARC才能正常运行   D.永远无法正常运行


答案会在回复之后出现~


本部分内容设定了隐藏,需要回复后才能看到






9.10获奖公布

截止到目前为止,共有yoyeayoyea,229779758,kjubo,skylin,zxhfirefox,bunzgame,laweibo,heartasice,numbbuaa,494587911,wjcwukong,robin石,3998337,hhfssg,qdvictory,水中月,hnu_master,wzy19729800,zhl496148949,曈曈7添,guoyi427,
古字,wondane,393846671,pkugeo, harbinxxh ,appbying,这27位答对三个以上。恭喜block的知识掌握的不错呀!


其中 harbinxxh 非常热爱学习,他在199楼还特别对答案做了分析,值得额外奖励一只小熊!

以下是获得小熊的10位会员,请站短回复邮寄地址,包括姓名,电话,地址,感谢对CC的支持。

yoyeayoyea,laweibo,heartasice,kjubo,skylin,qdvictory,水中月,pkugeo,wondane,wzy19729800



CocoaChina支线任务电商平台已经上线,优质商品、商家NPC正在征集中,小伙伴们快快来哦。联系方式:QQ3442093904、QQ3479019115

如果大家对于CocoaChina有任何意见或者建议可以发邮件到:support@cocoachina.com

级别: 新手上路
UID: 233324
精华: 0
发帖: 61
可可豆: 79 CB
威望: 79 点
在线时间: 28(时)
注册时间: 2013-07-19
最后登录: 2013-09-19
1 楼:  发表于: 2013-08-28 14:24    发自: Web Page
学习
级别: 精灵王

UID: 6539
精华: 0
发帖: 825
可可豆: 13112 CB
威望: 13419 点
在线时间: 1732(时)
注册时间: 2009-06-22
最后登录: 2018-07-29
2 楼:  发表于: 2013-08-28 14:28    发自: Web Page
看看。。。。。。
级别: 风云使者

状态: 连续签到 - [66天]
UID: 16914
精华: 2
发帖: 4413
可可豆: 37468 CB
威望: 41605 点
在线时间: 10668(时)
注册时间: 2010-04-06
最后登录: 2018-10-23
3 楼:  发表于: 2013-08-28 14:30    发自: Web Page
我不会,就看看答案
级别: 管理员

状态: 连续签到 - [6天]
UID: 98590
精华: 0
发帖: 2726
可可豆: 14816 CB
威望: 7953 点
在线时间: 8940(时)
注册时间: 2010-10-18
最后登录: 2018-06-06
4 楼:  发表于: 2013-08-28 14:30    发自: Web Page
回 2楼(zzxap) 的帖子
不要为了看答案都这样啊  

回答问题吧~
CocoaChina支线任务电商平台已经上线,优质商品、商家NPC正在征集中,小伙伴们快快来哦。联系方式:QQ3442093904、QQ3479019115

如果大家对于CocoaChina有任何意见或者建议可以发邮件到:support@cocoachina.com

级别: 精灵王

状态: 连续签到 - [5天]
UID: 5761
精华: 0
发帖: 832
可可豆: 37811 CB
威望: 38807 点
在线时间: 2093(时)
注册时间: 2009-05-16
最后登录: 2018-05-19
5 楼:  发表于: 2013-08-28 14:32    发自: Web Page
只能来学习学习了
http://dev.cocounion.com/
能吃能喝能睡
级别: *
UID: 216703
精华: *
发帖: *
可可豆: * CB
威望: * 点
在线时间: (时)
注册时间: *
最后登录: *
6 楼:  发表于: 2013-08-28 14:35    发自: Web Page
看来确实得回炉好好学学 block了
级别: 新手上路

UID: 199530
精华: 0
发帖: 3
可可豆: 3 CB
威望: 3 点
在线时间: 10(时)
注册时间: 2013-01-05
最后登录: 2016-03-13
7 楼:  发表于: 2013-08-28 14:37    发自: Web Page
CCACC,答错了的话就当学习吧
级别: 新手上路
UID: 96840
精华: 0
发帖: 12
可可豆: 81 CB
威望: 31 点
在线时间: 98(时)
注册时间: 2011-10-09
最后登录: 2014-11-15
8 楼:  发表于: 2013-08-28 14:39    发自: Web Page
看看看看看看看看
级别: 精灵王

状态: 连续签到 - [341天]
UID: 4020
精华: 0
发帖: 437
可可豆: 24891 CB
威望: 25992 点
在线时间: 3388(时)
注册时间: 2009-04-02
最后登录: 2018-08-21
9 楼:  发表于: 2013-08-28 14:40    发自: Web Page
ADDBA

看看答案
一直在努力,一直都觉得努力得还不够~~
www.etware.com

本站内容均为本站转发,已尽可能注明出处。因未能核实来源或转发内容图片有权利瑕疵的,请及时联系本站,本站会第一时间进行修改或删除。 QQ : 3442093904

描述
快速回复

关注本帖(如果有新回复会站内信通知您)

发帖、回帖都会得到可观的积分奖励。查看论坛积分规则

按"Ctrl+Enter"直接提交
    顶部