KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm trying to understand blocks. I get how to use them normally, when passed directly to a method. I'm interested now in taking a block, storing it (say) in an instance variable and calling it later. The blocks programming guide makes it sound like I can do this, by using Block_copy / retain to copy the block away, but when I try to run it I crash my program. - (void) setupStoredBlock { int salt = 42; m_storedBlock = ^(int incoming){ return 2 + incoming + salt; }; [m_storedBlock retain]; } I try to call it later: - (void) runStoredBlock { int outputValue = m_storedBlock(5); NSLog(@"When we ran our stored blockwe got back: %d", outputValue); [m_storedBlock release]; } Anyone have any insights? (Or, is there something I'm not getting with blocks?) Thank you very much!
Tags (comma-separated)
Save Edits
Cancel