foreachマクロ
なるほど。こうするのか。
#define foreach(bind, item) \ for (typeof ((item).begin()) bind = (item).begin(), __ie = (item).end() ;\ bind != __ie ; \ bind++)
しかし、変数補足をどうするのかが問題だ。
マクロの罠にかかる恐れが!!
foreach(__ie, hoge) // エラー
とした場合、エラーになる。
gensymとか無いし。どうするんだろう。
そだ、On Lispも読み進めないとな。