Какой размер у unique_ptr?

Объект типа std::uniqueptr обычно занимает столько же памяти, сколько и обычный указатель, то есть размер указателя на данной платформе (например, 4 байта на 32-битных системах и 8 байт на 64-битных).

Короткий ответ

Что ответить на собеседовании

Объект типа std::uniqueptr обычно занимает столько же памяти, сколько и обычный указатель, то есть размер указателя на данной платформе (например, 4 байта на 32-битных системах и 8 байт на 64-битных).

Подробный разбор

Ответ с пояснениями

Объект типа std::unique_ptr обычно занимает столько же памяти, сколько и обычный указатель, то есть размер указателя на данной платформе (например, 4 байта на 32-битных системах и 8 байт на 64-битных).

std::unique_ptr — это обертка над обычным указателем, которая обеспечивает уникальное владение объектом и автоматическое освобождение памяти, но сама по себе не хранит дополнительных данных, кроме указателя.

Пример:

std::unique_ptr<int> ptr = std::make_unique<int>(10);
// sizeof(ptr) == sizeof(int*)

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку