Имитация сопоставления с образцом в стиле ML в C ++
В заголовке почти все сказано, как бы я смоделировал сопоставление шаблонов в стиле ML в C ++, например;
Statement *stm;
match(typeof(stm))
{
case IfThen: ...
case IfThenElse: ...
case While: ...
...
}
Где «IfThen», «IfThenElse» и «While» являются классами, которые наследуются от «Statement»