Я только что читал примеры концепций C ++ 20. Теперь я пытаюсь создать функцию, которая будет распечатать, если данный тип является хэш-столом или не использует концепции, смешанные с частичной специфицией. Но, к сожалению, это не работает. < /P>
#include
#include
template
concept Hashtable = requires(T a) {
{ std::hash{}(a) } -> std::size_t;
};
struct Foo {};
template
void Bar() {
std::cout
Type T is not a hashtable
Type T is a hashtable
< /code>
мой вопрос < /strong> < /p>
Можно ли специализироваться с использованием концепций? < /p>
Подробнее здесь: [url]https://stackoverflow.com/questions/55234054/partial-specialization-using-concepts[/url]
Я только что читал примеры концепций C ++ 20. Теперь я пытаюсь создать функцию, которая будет распечатать, если данный тип является хэш-столом или не использует концепции, смешанные с частичной специфицией. Но, к сожалению, это не работает. < /P>
В следующем примере программы шаблон класса с нетиповым параметром шаблона decltype(auto) частично специализирован с нетиповым параметром шаблона auto: шаблон struct A { static const int v = 0; }; шаблон struct A { static const int v = 1; }; и это...
Мой вопрос: как я могу использовать std::enable_if в сценарии частичной специализации шаблона с переменным числом шаблонов?
Например, у меня есть класс, который использует частичную специализацию шаблона с переменным числом вариантов, например ниже...
Я хотел бы иметь концепцию, которая проверяет, является ли тип контейнера
фиксированной длины. Тип может быть массив C-стиля, std :: array , std :: span или пользовательский контейнер. Я могу проверить условия контейнера
, как показано в коде ниже,...