|
383 / 280 / 112
Регистрация: 28.04.2015
Сообщений: 1,726
|
|||||||||||
Повторный вызов деструктора26.12.2020, 08:41. Показов 5690. Ответов 67
Привет!
Есть класс TVector и есть у него деструктор вот такой:
"надо корректно обрабатывать ситуацию повторного вызова деструктора. В этом случае деструктор не должен пытаться освобождать в динамической памяти объекты повторно" я не оч.выкупил, что требуется, но решил добавить такую проверку в деструкторе:
0
|
|||||||||||
| 26.12.2020, 08:41 | |
|
Ответы с готовыми решениями:
67
Повторный вызов деструктора
Повторный вызов деструктора для объекта |
|
19506 / 10109 / 2463
Регистрация: 30.01.2014
Сообщений: 17,833
|
|||||||
| 26.12.2020, 21:39 | |||||||
|
Если вдруг вам будет интересно разобраться в сути, а не ограничиваться собственными рассуждениями, то попробуйте начать вот с такого примера:
1) тип возвращаемого значения int * const?2) почему мы не можем присвоить ноль? Добавлено через 1 минуту PS. Мне о результатах положительных или отрицательных рассказывать не обязательно. Точнее даже не нужно. Я просто указал вам дорогу, дальше уже сами.
0
|
|||||||
|
Комп_Оратор)
|
|||
| 26.12.2020, 22:30 | |||
this как и то что категории значений и типы - ортогональные понятия. Тут уж и cppreference которые почти не отходят от стандарта говорят открытым текстом... Я уж не говорю о том что комитет и сообщество по ресурсам (включая не только деньги но профессионалов) несравнимы с IBM. Дело не только в и не столько в авторитетах. Дело даже не в том, что сделали с языком категории значений. Дело даже не в том кто прав (с точки зрения того как захотел увидеть другой участник). Дело даже не в стиле обсуждения (хотя в этом тоже). Если моё эссе вам непонятно, я вряд ли смогу как-то помочь. Я лишь попытался и всё.
0
|
|||
| 26.12.2020, 22:57 | |
|
0
|
|
|
Комп_Оратор)
|
|||||
| 27.12.2020, 00:28 | |||||
this имеет и тип и категорию значения. Вы просто продолжили и явно указали, что раздел новичков С++ данного форума, это ни какая-то там IBM (в контексте вопроса повторного вызова деструктора, разумеется). И пытаетесь научить меня (makе me understand) Нет конечно. Смотрите. Вопрос данной темы концептуально не нов и сводится, фактически к вопросу ручного запуска деструктора. Но не только. Были затронуты вопросы реализации совместного владения. И не раскрыто. Даже мелочь о том, что если уж занулил указатель то проверять его перед delete не требуется, не прозвучала. Этот вызов безопасен на нулевом указателе. То есть, по большому счёту, кроме некоторой малой потери быстродействия такое сброс указателя ни чего не несёт и является невинным актом праведной монахини в отношении свечи. Ни какого профита в части повторного вызова деструктора тут конечно нет. В целом это было отмечено. И вы видите как замечание по this сработало в теме? Досталось даже IBM (хотя я легко могу найти и другие источники, то что this имеет тип указателя константы это медицинский факт, хотя он может быть реализован и как неизменяемое правостороннее выражение возвращаемое как временная корпия, да. Но может быть и иначе). -
0
|
|||||
|
19506 / 10109 / 2463
Регистрация: 30.01.2014
Сообщений: 17,833
|
||
| 27.12.2020, 00:32 | ||
|
0
|
||
|
Комп_Оратор)
|
|||
| 27.12.2020, 00:40 | |||
И речь опять не о том. Тема завалилась из-за ненужного замечания в категоричной форме. Неверного к тому же или по крайней мере спорного.
0
|
|||
|
19506 / 10109 / 2463
Регистрация: 30.01.2014
Сообщений: 17,833
|
||||
| 27.12.2020, 01:07 | ||||
|
Что касается Microsoft, то это документация по их компилятору, а не по С++. Они описывают диалект С++, реализованный в их компиляторе. И у них this действительно const. Однако здесь мы не обсуждаем конкретную реализацию, по крайней мере об этом нигде не было указано явно. По диалекту MS у нас есть отдельный подраздел здесь: https://www.cyberforum.ru/visual-cpp/ Добавлено через 5 минут Не по теме:
Однако что сделано, то сделано. Вы и сами приложили руку к тому, что тема скатилась, начав спорить. Добавлено через 6 минут Обсуждение нашего подвопроса на SO. Верный ответ со ссылками на стандарт и пояснением исторических причин отступления от стандарта в некоторых реализациях C++: https://stackoverflow.com/ques... 67#6067267
1
|
||||
|
Комп_Оратор)
|
|||||||
| 27.12.2020, 01:40 | |||||||
|
Да, вот текст черновика:
Где-нибудь было бы интересно увидеть, в чём смысл и профит от
0
|
|||||||
| 27.12.2020, 01:40 | |
|
Вызов деструктора
Вызов деструктора Вызов деструктора Вызов деструктора Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|