348 :
名無しさん@1周年:
346じゃないが、フツーにC++らしく多態使うか、
struct elem {
enum {list,symbol} elem_type;
typdef std::list<elem*> elem_list;
elem_type type;
union {
elem_list* list;
int symbol;
};
};
てなとこじゃないの。
まあ、そもそもそんないいかげんな構造を必要とすることまずないけどな。
lispでプロトタイピングするにしても、裸のまま扱ったら混乱するから、
アクセサ用意するだろ、普通。そんなんだったら型付きの構造体の方が
使い勝手いいぞ。