Нет, вы не можете сделать это, потому что typedef
является статической конструкцией времени компиляции. Действительно, вся система типов в C ++ является статической. Вы можете решить свою проблему с помощью чего-то вроде boost::variant<float, double>
.