![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 15.02.2020
Сообщений: 2
|
![]()
У меня есть класс "Матрица", который создается динамически в зависимости от количеста столбцов и строк.В деструкторе я удаляю свою матрицу для избежания утечки памяти.К чему это я...При перегрузке оператора сложение и создания новой временной матрицы "тмп" в ней и возвращения ее для присваивания другой матрицы , вызывается заранее деструктор , который удаляет ее до всего этого.В итоге компилятор выдает ошибку , тк я обращаюсь к удаленной области памяти.Как избежать этого и не получить утечку памяти?Я пробовал создать метод удаления , но тогда я не могу удалить временную матрицу тмп(тк ее передаю, а в мейне у меня уже нет доступа к ней),снова получив утечку памяти.Помогите!)
|
![]() |
![]() |
![]() |
#2 |
фрилансер, препод.
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,044
|
![]()
ты создаёшь объект на стеке
Код:
Код:
![]() по логике там должна возвращаться ссылка на самое себя, то есть нужно Код:
|
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 15.02.2020
Сообщений: 2
|
![]()
Но тогда первая матрица (3 = 1 + 2)(1- первая, this) тоже изменяется и становится идентичной 3
|
![]() |
![]() |
![]() |
#4 |
фрилансер, препод.
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,044
|
![]()
nixanok, отсюда следует что? Правильно, возвращать нужно не ссылку, а объект
функция должна принимать две константные ссылки. Создавать объект, складывать туда оба входящих, возвращать полученный. Что-то вроде: Код:
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Проблема с утечкой оперативной памяти | User90 | Visual C++ | 11 | 29.01.2013 21:54 |
CreateThread непонятки с утечкой памяти | fucil | Общие вопросы Delphi | 3 | 15.01.2013 20:50 |
Проблема с утечкой памяти | mr_cipher | C# (си шарп) | 10 | 28.08.2012 14:18 |
Проблема с утечкой памяти | ExPeL | Win Api | 4 | 21.10.2010 22:13 |
самописный assert: проблема с утечкой памяти) | sashonk | Общие вопросы C/C++ | 2 | 26.04.2010 15:58 |