foreachマクロ

なるほど。こうするのか。

#define foreach(bind, item) \
    for (typeof ((item).begin()) bind = (item).begin(), __ie = (item).end() ;\
         bind != __ie ; \
         bind++)

しかし、変数補足をどうするのかが問題だ。


マクロの罠にかかる恐れが!!

foreach(__ie, hoge) // エラー

とした場合、エラーになる。

gensymとか無いし。どうするんだろう。


そだ、On Lispも読み進めないとな。