& ldquo; Нет совпадений & rdquo; ошибка после введения std :: enable_if

Вместо flexbox я рекомендую использовать столбцы для таких сеток. Как вы можете видеть, расстояние на нижних изображениях может быть лучше, но для собственного решения для CSS я считаю, что это довольно аккуратно. Нет больше JS:

.container {
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
}

ul {
  margin: 0;
  padding: 0;
}

ul li {
  list-style: none;
  font-size: 0;
}

.portfolio ul {
  -moz-column-count: 4;
  -webkit-column-count: 4;
  column-count: 4;
  -moz-column-gap: 3px;
  -webkit-column-gap: 3px;
  column-gap: 3px;
}

.portfolio ul:hover img {
  opacity: 0.3;
}

.portfolio ul:hover img:hover {
  opacity: 1;
}

.portfolio ul li {
  margin-bottom: 3px;
}

.portfolio ul li img {
  max-width: 100%;
  transition: 0.8s opacity;
}

2
задан HolyBlackCat 25 March 2019 в 07:38
поделиться

1 ответ

Необходимо использовать class / typename во втором параметре шаблона в определении

template<typename T, class = std::enable_if_t<std::is_integral_v<T> && std::is_unsigned_v<T>>>
                     ^^^^^
MyClass& MyClass::operator&=(T d)

Когда условие std::is_integral_v<T> && std::is_unsigned_v<T> истинно, enable_if::type равно void. Без class void обрабатывается как параметр шаблона нетипичного типа, что является неправильным (void нельзя использовать как параметр нетипичного параметра , ссылка ).

С помощью class / typename второй параметр определяется как параметр типа, который принимает значение void - class SomeTypeName = void, если условие в enable_if имеет значение true, или этот шаблон функции отбрасывается из перегрузок, установленных, когда условие enable_if имеет значение false.

0
ответ дан rafix07 25 March 2019 в 07:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: