作者whitefur (白毛)
看板MacDev
标题[问题] 用block当参数, 该block是static吗
时间Thu May 30 18:10:07 2013
用block当参数的话
该block是static吗?
- (IBAction)btnPressed:(id)sender {
//照理来说,每次都会产生新的block?
[foo test:^{
//do something
}];
}
- (void)test:(void(^)())blockTest
{
//但blockTest每次的位置都一样, 都是同一个object
NSLog(@"blockTestLocation: %@", blockTest);
blockTest();
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.230.132.207
1F:→ Killercat:虽然我没仔细研究 不过函数位置应该都是static 不会有多 05/30 19:52
2F:→ Killercat:份instance, 而函数用到的跟宣告的才会多份instance? 05/30 19:53
3F:→ Killercat:我相信你在里面宣告非static的物件 应该不会被重用的 05/30 19:53
4F:→ Killercat:函数位置是不变这一点 我想就算匿名了(block, lambda) 05/30 19:54
5F:→ Killercat:应该也不会有例外才对 05/30 19:54