У меня есть функция, которой присваивается unique_ptr в строку.Я хочу скопировать это значение lambdas и использовать его для вызова функций, которые принимают std :: string.Вот что я делаю ниже, правильный способ сделать это:
void someFunc(std::unique_ptr<std::string> id) {
const std::string idStr = *id;
stream.subscribe([=](auto arg1) { arg1.invoke(idStr); });
}
Что я хочу сделать, это просто скопировать строку в новое место.На данном этапе не волнует идентификатор unique_ptr.Я нашел это обсуждение , которое говорит, что, кажется, указывает, что я могу сделать следующее:
std::string idStr = std::move(id);
Однако, на самом деле, это не работает для меня.Сбой с ошибкой «нет жизнеспособного преобразования».