check_eq(T&& lhs, U&& rhs) {
if constexpr (!is_equality_comparable<T, U>::value) {
static_assert(0 && "equality comparable expected");
}
return (lhs == rhs);
}
код без else будет компилироваться при любых инстанциированиях, что не всегда желательно
Почему так происходит?
что именно?
Ну, почему он будет компилироваться при любых инстанцированиях?
а почему нет? этот код же не в if
Хм, немного недогоняю.
https://godbolt.org/z/5j6sen3qT
Обсуждают сегодня