Здравствуйте, CodingUnit, Вы писали:
CU>то есть он смотрит оператором is те ли это типы, не проще ли использовать _N_GetVariantCode(), и по нему узнавать что это за экземпляр?
_N_GetVariantCode используется при генерировании switch конструкции. Минимальное количество вариантов, входящих в матч настраивается опцией компилятора -min-switch-size-variants. Видимо использовать _N_GetVariantCode нужно не только для построения switch-таблицы, но и для построения дерева выбора (уже не помню, но я хотел сделать эту оптимизацию).