|
|
|||||||||||||||||||||
Reset в unique_ptr19.02.2019, 22:35. Показов 10955. Ответов 51
Метки нет (Все метки)
Привет. Что делает эта функция?
затем во временную переменную приняли наш указатель, удаляем теперь созданный указатель... блин, зачем? Зачем здесь в обще этот T* old? нельзя просто так сделать:
на всякий случай оставляю код моего unique_ptr: Кликните здесь для просмотра всего текста
и еще- в конструкторе
0
|
|||||||||||||||||||||
| 19.02.2019, 22:35 | |
|
Ответы с готовыми решениями:
51
В чем отличие warm reset от cold reset? Непонятки с unique_ptr Инициализировать вектор unique_ptr |
|
"C with Classes"
|
|
| 21.02.2019, 10:51 | |
|
0
|
|
|
Комп_Оратор)
|
|
| 21.02.2019, 10:55 | |
|
Добавлено через 1 минуту
0
|
|
|
"C with Classes"
|
||
| 21.02.2019, 11:00 | ||
|
Не по теме:
0
|
||
|
285 / 176 / 21
Регистрация: 16.02.2018
Сообщений: 666
|
||||
| 21.02.2019, 14:09 | ||||
|
Добавлено через 9 минут unique_ptr выбрасывет исключение во время вызова внутри reset, то это приводит к неопределённому поведению. Вызову terminate не гарантирован.
0
|
||||
|
285 / 176 / 21
Регистрация: 16.02.2018
Сообщений: 666
|
|||||
| 21.02.2019, 15:30 | |||||
noexcept(false)?reset в Requires написано, что делитер не должен (shall not) бросать исключения.
reset его нет.)
1
|
|||||
|
Комп_Оратор)
|
|||
| 21.02.2019, 15:50 | |||
|
Хм... Что же выходит? Выходит, что главная причина по которой исключение из деструктора, это зло - это тот факт, что явно он не запускается (кроме танцев после placement new) и поэтому нет способа отловить данное событие внутри самой функции перед закрытием её рабочей области? Если есть ещё какие-то (кроме - плохо и некрасиво) причины, хотелось бы их услышать. Раздел - новичковский, думаю многим будет интересно. Просто утверждения: -"Так делать нельзя", мне лично мало. Но допустим. Допустим каждый сам себе не злобный не буратино и никто не напишет делетер который возьмёт да и выбросит исключение. Как тогда может стать объект невалидным в вопросе ТС?
0
|
|||
|
285 / 176 / 21
Регистрация: 16.02.2018
Сообщений: 666
|
|||
| 21.02.2019, 16:19 | |||
unique_ptr::reset, то порядок присвоения и вызова делитера там такой не из-за того, что делитер может выбросить исключение.
get_deleter(), а get_deleter()(old_p) может разрушить вызывающий его unique_ptr.
2
|
|||
|
Комп_Оратор)
|
||
| 21.02.2019, 19:08 | ||
unique_ptr. get_deleter() это же метод класса? Как же он может разрушить объект (delete this ? ). Очень странный побочный эффект...
0
|
||
|
285 / 176 / 21
Регистрация: 16.02.2018
Сообщений: 666
|
|
| 21.02.2019, 19:11 | |
|
IGPIGP, я же говорю, имеется в виду
get_deleter()(old_p), а не get_deleter()
0
|
|
|
Комп_Оратор)
|
||
| 21.02.2019, 20:50 | ||
old_p может завалить вызывающий объект unique_ptr. Ну то есть, это тот случай, когда я чувствую себя old_p
0
|
||
| 21.02.2019, 20:50 | |
|
Unique_ptr, семантика перемещения Unique_ptr и деструктор класса
QwtPlotItem и std::unique_ptr
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 6. Питон реализация энилоджиковской модели, картинка про Центральную часть будущей модели
anaschu 26.06.2026
Етить. ИИ мне на основе моего старого файла R создал вот эту вот хмерь на пайтоне.
Это уже новая модель, модель сукцессии грибной.
потоки фосфора, азота. Углерода.
5 видов организмов.
Я даже. . .
|
Как замкнутый ядерный цикл решит проблему недостатки фосфора? Био миграция фосфора со дна океана
anaschu 26.06.2026
Биологический лифт: Концепция подъема фосфора со дна океана с помощью ЗЯТЦ
Предлагаю на обсуждение альтернативу тяжелому промышленному бурению океанического дна. Вместо сложной инженерии мы можем. . .
|
сукцессия 5
anaschu 26.06.2026
ПЛАН РАЗРАБОТКИ математической модели сукцессии микоризных систем
Переход AM → EcM (Endo + ErM) · Шумилов А. С. · ИФХиБПП РАН · Пущино · 2026
. . .
|
сукцессия 4
anaschu 25.06.2026
Более детализированный план разработки
План доработки модели динамики микоризных симбиозов (EcM с гистерезисом)
Цель: Реализовать логику переключения между эрикоидным (ErM) и эктомикоризным. . .
|
|
сукцессия 3
anaschu 25.06.2026
Примерный план работ по модели
|
сукцессия 2
anaschu 25.06.2026
параметризировочная калибровочная таблица будущей модели
|
Многофункциональное здание: как одно здание порождает конфликты требований, которые никто не планировал (мат мет мод 29)
anaschu 23.06.2026
Многофункциональное здание:
как одно здание порождает конфликты требований,
которые никто не планировал
Материалы для обсуждения с МГСУ · 2026
Рисунки внутри приложенного ворд файла.
Что за. . .
|
28. Конкретное развертывание плана номер 1 из поста номер 27
anaschu 22.06.2026
Можно ли из модели получить конкретные строительные требования?
Честно — напрямую из текущей модели такие ответы не получить. Но цепочка логики есть, и она не такая длинная.
Где разрыв
. . .
|