保守性無視しても効率高めたいなら、マクロの方が良い。
確実にコード内に埋め込めて、関数呼び出しのコストがない。
なるべく使わないが良いけど、用途次第。 forは展開出来ないとか。