меня undefined reference выдает почему-то
Можно
Вообще само по себе использование приватных деструкторов - хреновая затея?
Есть сам код?
undefined reference это ошибка линкера - значит что ты не написал определение
Ты его вроде как не сможешь перегрузить, хз в каких случаях его надо делать приватным если честно
void Display::Report::Delete(Report* report_to_delete, bool is_string_deletion_needed) { if(report_to_delete->_is_string) { delete report_to_delete->_variable.value.as_string; } delete report_to_delete; }
Переопределить приватные функции можно
Это не деструктор )
это кажется делают чтобы объект нельзя было создать
delete report_to_delete; не деструктор?
У меня экземпляр в союзе-члене ссылку на объект в куче может тащить и если тащит, ее иногда надо удалять вместе с ним, иногда нет.
Это вызов деструктора (я думал он сам деструктор скинет)
Вообще, явный delete в современном С++ не используется, советую изучить тему умных указателей
Да, я выше написал - он у меня неявным был, а после того как я его приватным обозвал - стал явным, я этот момент потерял.
больше того явный new/delete записан в список смертных грехов С++ программиста.
Я их боюсь в своем дебендеде использовать. Стараюсь на статической памяти выехать и вот сейчас не получилось, пока - временный костыль, пока на очередь в BSS не перепишу. Меня рассказами про сегментированную кучу ночью до мокрых штанов напугали.
ну new же заиспользовал, там почему его не передать по управление unique_ptr?
не, так дело не пойдет. ты должен понимать когда будет сегментация.
Оно пролазит через С шный апи, который такие штуки не знает и там теряется, так же как и шеред вроде.
Когда хочешь полностью контролировать создание объектов такого классов
где угодно
Ну ладно уж, не таких уж и смертных
Нет только на стеке
Не не так, только не динамически
Я недавно написал delete this Ещё есть шансы у моей пропащей души?
да, 100 рублей в кассу
Delete this - это нормально. Не надо этого стесняться!
так, ты мне весь бизнес на индульгенциях хочешь запороть?
Американских?))
да, ошибка, конечно американских
Обсуждают сегодня