Мне часто нужно использовать необязательный тип для функций:
std::optional<int32_t> get(const std::string& field)
{
auto it = map.find(field);
if (it != map.end()) return it->second;
return {};
}
Есть ли способ вернуть необязательное значение в одной строке? например это:
std::optional<int32_t> get(const std::string& field)
{
auto it = map.find(field);
return it != map.end() ? it->second : {};
}
приводит к ошибке
error: expected primary-expression before '{' token
return it != map.end() ? it->second : {};
^