Есть ли способ потребовать, чтобы тип шаблонов имел свойства?
Например:
template <typename T, typename U>
void foo()
{
U a,b;
bool truthiness = T()(a,b);
if (truthiness)
// do something
}
Итак, как мне потребовать, чтобы T
определял operator()(U a, U b)
, который возвращает определенный тип? Это возможно? (Я знаю, что это на d, но не уверен насчет c++ ).
пс. если утиная типизация здесь неверна, дайте мне знать, я считаю, что это правильно, но я не уверен.