- теперь любой вариационный пакет может быть сопоставлен с
периментировал с вариабельными шаблонами C ++ 0x, когда наткнулся на эту проблему:
template < typename ...Args >
struct identities
{
typedef Args type; //compile error: "parameter packs not expanded with '...'
};
//The following code just shows an example of potential use, but has no relation
//with what I am actually trying to achieve.
template < typename T >
struct convert_in_tuple
{
typedef std::tuple< typename T::type... > type;
};
typedef convert_in_tuple< identities< int, float > >::type int_float_tuple;
GCC 4.5.0 выдает ошибку при попытке ввести определение пакета параметров шаблона.
По сути, я хотел бы «сохранить» пакет параметров в typedef, не распаковывая его. Является ли это возможным? Если нет, есть ли какая-то причина, почему это не разрешено?