Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 13.12.2019
Сообщений: 47

класс с unique_ptr

16.11.2022, 16:38. Показов 344. Ответов 6

Студворк — интернет-сервис помощи студентам
Всем привет, недавно на собесе был вопрос о том, что скомпилируется ли такой код?

C++
1
2
3
4
5
class AB
{
 
    unique_ptr<int> p;
};
я сказал, что да, но так и не понял верно ли ответил(так как мне ответили: ну тогда попробуйте скомпилировать).
Есть здесь какие-то подводные камни? я не нашел.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.11.2022, 16:38
Ответы с готовыми решениями:

unique_ptr на абстрактный класс
#ifndef STATE_MANAGER_PENDING_ACTION_PROCESSOR_HPP #define STATE_MANAGER_PENDING_ACTION_PROCESSOR_HPP #include &lt;memory&gt; #include...

Unique_ptr
Добрый день! Пытаюсь разобраться с использованием умных указателей. В данном случае, unique_ptr. У меня имеется следующий код: ...

unique_ptr и TFileStream
Добрый день! Подскажите, как вот это: TFileStream *fs = new TFileStream(OpenDialogAddFoto-&gt;FileName, fmOpenRead); delete fs; ...

6
 Аватар для zayats80888
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
16.11.2022, 16:42
Цитата Сообщение от NewFive Посмотреть сообщение
скомпилируется ли такой код?
Тут нет кода, как такового.
И в таком виде, если засунуть "это" в единицу трансляции, не скомпилируется.
1
19496 / 10101 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
16.11.2022, 16:43
NewFive, std::unique_ptr
0
0 / 0 / 0
Регистрация: 13.12.2019
Сообщений: 47
16.11.2022, 16:51  [ТС]
Цитата Сообщение от zayats80888 Посмотреть сообщение
Тут нет кода, как такового.
И в таком виде, если засунуть "это" в единицу трансляции, не скомпилируется.
моя ошибка, забыл сказать, что тут предполагалось, что пространства имен std уже определено, int main тоже и т.д. Разговор был изначально об указателях и потом мне показали этот код и спросили, скомпилируется ли?
0
19496 / 10101 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
16.11.2022, 16:53
Цитата Сообщение от NewFive Посмотреть сообщение
тут предполагалось, что пространства имен std уже определено
Это было в условии задачи, иди вы сами так решили? Очень сомневаюсь, что на собеседовании это имели в виду, потому что по умолчанию в настоящих проектах никто using namespace std не делает.
0
0 / 0 / 0
Регистрация: 13.12.2019
Сообщений: 47
16.11.2022, 16:58  [ТС]
Цитата Сообщение от DrOffset Посмотреть сообщение
Это было в условии задачи, иди вы сами так решили? Очень сомневаюсь, что на собеседовании это имели в виду, потому что по умолчанию в настоящих проектах никто using namespace std не делает.

да, я знаю, у него(насколько я помню) std:: был написан напрямую, но int main(){} вроде не было, я не помню. Просто мы говорил об указателях, о shared, об unique, как они устроены внутри, а потом такой под показали, и я пытался найти подвох, но не мог, но может дело действительно было в отсутствии int main(){}, а я искал причину в другом.
Но теперь я понял, что сам код правильный(то есть можно определить класс и внутри него определить юник поинтер(не проинициализировав), и, похоже, дело было в int main(хотя я не помню, был ли он).
0
19496 / 10101 / 2461
Регистрация: 30.01.2014
Сообщений: 17,808
16.11.2022, 19:00
Цитата Сообщение от NewFive Посмотреть сообщение
а потом такой под показали, и я пытался найти подвох
Возможно в том коде было что-то еще, на что вы не обратили внимания?
В С++ правильность ответов во многом зависит от контекста, в котором их задают.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.11.2022, 19:00
Помогаю со студенческими работами здесь

unique_ptr и в потоке
Добрый день! Что означает создание объекта без владельца? Возьмем вот такое создание объекта: void __fastcall...

Reset в unique_ptr
Привет. Что делает эта функция? void reset(T* ptr = nullptr) { T* old = m_ptr; m_ptr = ptr; delete old; } мы приняли...

Unique_ptr и WriteFile
всем привет. есть MS VS 2015 upd2, в которой выполняется такая примерно штука: //выделение памяти unique_ptr&lt;void,...

Непонятки с unique_ptr
Объясните плиз кто знает, почему вот такая строка не вызывает исключения: unique_ptr&lt;char&gt; sptr {new char {&quot;Stroka&quot;}}; ...

Свой unique_ptr
Решил я тут написать свой unique_ptr... вообщем код компилируется, но происходит утечка из-за того, что не создается объект удаления по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru