2007/04/11

マクロ関数!=関数

同じような処理(構造体にデータをセットして関数に渡すだけ)をソースのあちこちでやっていたので、マクロ関数を定義して読みやすくしてみた。関数を新しく作っても良かったが、引数の数が多くなりそうだったので、マクロ関数にした。

C言語のマクロ関数はただ単にプリプロセッサで文字列の置換がされるだけなので、型チェックや変数の値とかに注意する必要はあるけど、使うのは簡単(使い方を誤ると副作用もでかいけど・・・)

普通の関数と違って、ポインタ渡しで渡す必要が無かったり、戻り値が取れないとか使い所を分けてやる必要があるけれど、これってCの初歩じゃないのか?

0 件のコメント: