C_callback


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

コールバック(要書き直し項目に指定されています)

関数を作る際に一部処理をぼやかしておいて、使うときにその部分を決めたいって時ありません?
そんなときに関数を引数に取ってコールバックさせるように作るとわりと便利。

例えばこんなとき。


void famicom(int a){
  case 0:
    donkey();
    break;
  case 1:
    zelda();
    break;
}

あー、famicom関数はモウ弄りたくないんじゃ!!

で関数のポインタを使う


void famicom(void (*func)(void)){
 func();
}

メチャスッキリ!
(とはいうものの、famicom関数利用時にswitchを書く必要があるので、
記述量は何も変わっていない事に注意)
ポインタを利用するとプログラムをすっきりと記述することが可能になる。