11 / 11 / 10
Регистрация: 26.12.2017
Сообщений: 48
|
|||||||||||
1 | |||||||||||
Структура, деструктор, файлы, траблы15.04.2018, 18:35. Просмотров 934. Ответов 9
Метки нет Все метки)
(
Короче, нужна помощь.
Есть файл info.txt. Есть структура student.
Пишу delete[]student. Но информация назад не записывается. Записывается только самый первый элемент. Можно ли это как-то исправить???
0
|
|
15.04.2018, 18:35 | |
Почему создается виртуальный деструктор A, а в таблице виртуальных функций лежит деструктор B Структура содержащая QString и ее деструктор Траблы с визуалкой и sql в чем траблы незнаю
|
|
11 / 11 / 10
Регистрация: 26.12.2017
Сообщений: 48
|
||||||
15.04.2018, 19:30 [ТС] | 3 | |||||
0
|
11 / 11 / 10
Регистрация: 26.12.2017
Сообщений: 48
|
|
15.04.2018, 19:39 [ТС] | 5 |
не работает, записывает только 1 студента. Но я сделал так. Создал фукнцию записи в файл одного студента. И запихнул это в деструктор. И, оно, работает...
0
|
11 / 11 / 10
Регистрация: 26.12.2017
Сообщений: 48
|
||||||
15.04.2018, 19:47 [ТС] | 7 | |||||
Короче. У меня есть база данных струдентов. Я создал структуру студент. При создании массива студентов вызывается конструктор, который считывает информацию из файла. Потом всякие действия по типу изменить что-то. Потом я хочу это перезаписать в файл. Для этого я сделал конструктор. Который записывает информацию в файл. Но он не работал. После этого я добавил в структуру функцию, которая записывает информацию о студенту в файл. Записал эту функцию в структуру. И теперь при удалении массива структур
0
|
3404 / 2785 / 1251
Регистрация: 29.01.2016
Сообщений: 9,423
|
|
15.04.2018, 19:54 | 8 |
Не нужен для этого конструктор.
И правильно делал. Правильно. Правильно. Дальше, что хочешь? Добавлено через 39 секунд Это: Добавлено через 1 минуту Если это, то, в цикле, вызываешь функцию записи данных студента для каждого элемента блока studentx. В фукнции (которая в структуре) не должно быть открытия файла для записи, это должно быть сделано один раз до обработки блока.
0
|
11 / 11 / 10
Регистрация: 26.12.2017
Сообщений: 48
|
||||||||||||||||
15.04.2018, 19:58 [ТС] | 9 | |||||||||||||||
Я хотел чтобы записывалась измененная информация в файл. Я хотел чтобы при удаления массива она записывалась. Поэтому я хотел сделать деструктор который удаляет поэлементно. Но оно не работало. И я сделал функцию в структуре которая записывает в файл. И потом эту функцию вызвал в деструкторе.
Добавлено через 1 минуту функция в структуре
0
|
3404 / 2785 / 1251
Регистрация: 29.01.2016
Сообщений: 9,423
|
||||||
15.04.2018, 20:16 | 10 | |||||
![]() Решение
Оно может и работает, но это всё должно не так быть. Смотри, когда ты делаешь это:
Убери деструктор, для твоего класса он не нужен. Сделай отдельную функцию, для записи блока студентов в файл (файл там открывай для записи, а не для дозаписи), передавай туда указатель на блок студентов, и размер блока. Вызовешь её перед освобождением памяти под блоком. Всё.
1
|
15.04.2018, 20:16 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь. Структура и файлы структура и файлы Структура и файлы прямого доступа Исправление ошибок. Файлы. Структура Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |