Допустимость unique_ptr, переданного как ссылка rvalue на функцию (наследование)C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Допустимость unique_ptr, переданного как ссылка rvalue на функцию (наследование)

Сообщение Anonymous »

У меня есть следующий код, и я пытаюсь понять, почему базовая переменная unique_ptr остается допустимой после вызова foo(). Однако я пока не нашел ответа.

Код: Выделить всё

#include 
#include 

struct Base
{
};

struct Derived : public Base
{
};

void foo(std::unique_ptr&& b)
{
}

int main()
{
std::unique_ptr derived = std::make_unique();
foo(std::move(derived));
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/79391473/validness-of-unique-ptr-passed-as-a-rvalue-reference-to-a-function-inheritance[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»