|
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
|
||||||
Классы - ошибка в деструкторе24.03.2013, 16:46. Показов 1195. Ответов 12
Метки нет (Все метки)
У меня сейчас такое "задание": опередить класс длинного целого числа (длинная арифметика), для сохранения которого необходимо использовать однонаправленный связной список. Конструктор создаёт всего-лишь первый элемент списка "Head" со значениями data = NULL, next = NULL. При чтении числа значения заносятся в конец списка.
В итоге данный деструктор выдаёт ошибку при удалении двух чисел в конце работы программы:
0
|
||||||
| 24.03.2013, 16:46 | |
|
Ответы с готовыми решениями:
12
Ошибка в деструкторе Ошибка в деструкторе Ошибка в деструкторе |
|
...
1910 / 1329 / 966
Регистрация: 12.02.2013
Сообщений: 2,172
|
|
| 24.03.2013, 19:21 | |
|
Hunter13ua, код в принципе верен (правда можно было бы и 1-ой вспомогательной переменной воспользоваться, но это мелочи). Покажите весь класс.
0
|
|
|
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
|
||||||||||||||||
| 24.03.2013, 19:29 [ТС] | ||||||||||||||||
LongNumbers.cpp
LongNumbers.h
0
|
||||||||||||||||
|
|
|
| 24.03.2013, 19:37 | |
|
0
|
|
|
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
|
|
| 24.03.2013, 19:46 [ТС] | |
|
Kuzia domovenok, а объяснить почему можно? Я же не в курсе дела
0
|
|
|
|
|
| 24.03.2013, 19:51 | |
|
потому что в языке С++ раздельная компиляция. СРР Файлы не должны практически ничего знать друг о друге.
0
|
|
|
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
|
|
| 24.03.2013, 19:55 [ТС] | |
|
Kuzia domovenok, понял. А если вбить весь код из LongNumbers.cpp ниже в заголовочный файл - будет существенная разница ?
0
|
|
|
Каратель
|
||
| 24.03.2013, 19:55 | ||
|
0
|
||
|
|
|
| 24.03.2013, 19:59 | |
|
Говоря простым языком,
#include команда препроцессора, которая говорит, что перед компиляцией срр файла в это место будет скопипащен текст из другого файла. Обычно это требуется для добавления заголовочных (.h) файлов в программу. Но это не значит, что всю программу следует инклюдить в один файл, а затем компилировать. Раздельная компиляция, как я её понимаю, это такая штука, что после того, как cpp файл прошёл препроцессор, он может компилироваться вне зависимости от наличия или отсутствия других срр файлов. Прочие срр могли скомпилироваться с ошибками или вообще их не хватает - не важно. компилятор обрабатывает срр файлы по-одному и строит из них куски кода. Затем эти куски кода связываются linkerом. И только при этом процессе уже складываются в единый экзе файл. Поэтому не надо делать это раньше времени.
1
|
|
|
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
|
|
| 24.03.2013, 20:07 [ТС] | |
|
Jupiter, так я ведь переопределил оператор присваивания. Он удаляет старую память, создаёт новую и туда уже копирует значения из второго объекта. Разве ошибся ?
Добавлено через 3 минуты Kuzia domovenok, понял, благодарю за разъяснение
0
|
|
|
Каратель
|
||
| 24.03.2013, 20:29 | ||
|
для переопределения параметр должен передаваться: по значению, по ссылке, по ссылке на константу(+ volatile опционально к последним двум вариантам)
0
|
||
|
46 / 46 / 18
Регистрация: 25.10.2011
Сообщений: 183
|
||||||
| 24.03.2013, 23:27 [ТС] | ||||||
|
Окей, тогда будьте добры, помогите с операцией присваивания
![]() Классы только начал изучать, соответственно и операции. Попытался переписать нечто:
0
|
||||||
|
Каратель
|
|||||||
| 25.03.2013, 00:00 | |||||||
0
|
|||||||
| 25.03.2013, 00:00 | |
|
Помогаю со студенческими работами здесь
13
Ошибка при работе delete в деструкторе
Возникает ошибка при удалении динамического массива символов в деструкторе класса
Ошибка в деструкторе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Рецензия / Мнение
Это мой обзор планшета X220 с точки зрения школьника.
Недавно я решила попытаться уменьшить свой. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|