コールバック的に呼びたい処理をブロックプロパティにして使う方法。

ヘッダー

1typedef void (^Handler)(void);
2
3@interface MyViewController : UIViewController
4@property (nonatomic, copy) Handler handler;
5- (IBAction)buttonTapped:(id)sender;
6@end

実装

1- (IBAction)buttonTapped:(id)sender {
2    self.handler();
3}

使う側

1- (void)func
2{
3    MyViewController* myVC = ...;
4    myVC.handler = {
5        // do something
6    };
7}

MyViewControllerにはボタンがあってボタンが呼ばれたときに何かするコールバックみたいなイメージ。ブロック周りの書き方はつい忘れてしまうのでスニペット的な目的でここに残しておく。