возвращать нужный обьект? Например:
in.GetOperation(l, [](auto op){
if (op >= eOperators::DELIMETER) {
return def::math_function();
} else {
return def::math_operator();
}
})(2000);
Это не работает, constexpr тоже if
Лямбда в этом плане не сильно отличается от функции. Она должна возвращать конкретный тип
а можно ли как то это обойти?
Сначала стоит ответить на вопрос, как эта лямбда должна использоваться
эта лямбда используется для определения нужной мат операции и всего лишь возвращает пустой обьект для того, чтобы взять от него тип и все
Тут или std::variant, или неверный дизайн
у меня все на этих варинтах, я просто хотел через енам получить нужный тип для функтора в варианте и через std::get его достать
Вы тип хотите зависимым от параметры функции сделать - это на настоящий момент невозможно. Вам нужно как-то иначе к задаче подойти.
Обсуждают сегодня