к вам кучу раз с такими вопросами, но помогите мне пожалуйста, что я делаю не так??? код: https://pastebin.com/i9LTVZhb Ошибка double free. Я понимаю что я 2 раза чищу память, но объект портиться. Где я могу портить память, если создаю новый объект? Как это решить?
Именно в методе перегрузки операции +
Кто нибудь?
Универсально ответ даже не читая код - отладкой. Воспроизводишь ситуацию в отладчике и находишь проблему. Также могут помочь статические анализаторы кода , valgrind и другие подобные средства.
Класс владеет ресурсом, выделенной памятью, которую освобождает в деструкторе. Оператор возвращает копию, конструктор копирования не реализован, по умолчанию. И оригинал и копия в деструкторе вызывают delete для одного указателя.
Код плохой, названия функций не ясные, я что-то ничего не нашел
И если это лабораторная по c++ в которой надо строить пересечения/объединения set, то у меня хорошая новость, класс set уже есть в стандарте.
Обсуждают сегодня