Вопросы с тегом «template-specialization»

87
Почему шаблон функции не может быть частично специализированным?

Я знаю, что спецификация языка запрещает частичную специализацию шаблона функции. Хотелось бы узнать, почему он это запрещает? Разве они не полезны? template<typename T, typename U> void f() {} //allowed! template<> void f<int, char>() {} //allowed! template<typename T>...

87
Частичная специализация шаблона функции с ++?

Я знаю, что приведенный ниже код является частичной специализацией класса: template <typename T1, typename T2> class MyClass { … }; // partial specialization: both template parameters have same type template <typename T> class MyClass<T,T> { … }; Также я знаю, что C ++ не...

17
Правильно ли Clang отклонять код, в котором вложенный класс шаблона класса определяется только через специализации?

Дан следующий шаблон класса: template<typename T> struct Outer { struct Inner; auto f(Inner) -> void; }; мы определяем Innerотдельно для каждой специализации Outer: template<> struct Outer<int>::Inner {}; template<> struct Outer<double>::Inner {}; а затем определить...

9
несоответствие clang / gcc в специализации классов

Я столкнулся с этой проблемой, пытаясь специализировать tuple_size/ tuple_elementдля пользовательского класса в C ++ 17 для структурированного связывания. Ниже код компилируется в GCC, но не в clang (обе версии транка, см. Ссылку ниже). #include <type_traits> template<typename T,...