Я определяю VARIADIC-структуру как такVARIADIC структура спецификации
template <class T, class... TRest>
struct Opa
{
Opa()
{
std::cout << "Mutiple-arguments template";
}
};
и хочу специализироваться его для случая с 1 аргументом только в следующем
template <>
struct Opa<class T>
{
Opa()
{
std::cout << "One-argument template";
}
};
но компилятор просто игнорирует эту вторую-структуру, и выход от
Opa<int> opa;
Opa<int, int> opa_opa;
является Mutiple-arguments template, Mutiple-arguments template
.
Указание шаблона с одним аргументом по-разному, например.
template <class T>
struct Opa
{...}
привел к ошибке компиляции. Я понимаю, что мой вопрос довольно прост, но googling не помогло. Так что, пожалуйста, не бросайте на меня гнилые помидоры, и спасибо за ответы.
Где ваш вариационный шаблон? –