Построить boost-вариант, содержащий значение n-го типа в индексе типа варианта?

Я хочу построить boost::variantы, содержащие значения, построенные по умолчанию, указанные с индексом типа - без написания собственного оператора switch над индексом типа.

Я полагаю, что это должно быть возможно, каким-то образом, в MPL?

Чтобы уточнить, однако, индекс не является выражением константы времени компиляции.

Случай использования заключается в том, что мне нужно построить вариант, который позже будет заменен на вариант, содержащий правильное значение, но на данный момент я знаю только индекс типа. Считайте это проблемой ленивой десериализации.

9
задан James 16 February 2012 в 14:46
поделиться