LINUX.ORG.RU

Специализация шаблона с константным значением

 , , ,


1

1

Добрый день всем.

Дано объявление шаблона:

template <typename T, T v>
struct Var
{
    using Type = T;

    static const Type value = v;
};

И есть его частичная специализация:

template <int N>
using Int = Var<int, N>;

Также есть обобшенная метафункция суммирования:

template <typename, typename>
struct Sum
{
    static void apply()
    {
        std::cout << "Common Sum()" << std::endl;
    }
};

Как написать специализацию этой функции именно для Int, если это возможно?

template <>
struct Sum<?, ?>
{
    static void apply()
    {
        std::cout << "Int Sum()" << std::endl;
    }
};