говорит, что адрес оператора должен находиться на LVALUE, который я не думаю, что результат Declval: < /p>
template
void test_serialisation(T* t)
{
constexpr bool can_serialise = requires { t->doesntexist; };
}
template
void something()
{
test_serialisation(&std::declval()); // HERE
}
int main(int argc, char* argv[])
{
something();
}
Подробнее здесь: https://stackoverflow.com/questions/796 ... -a-declval