|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||||||||||||||||
Покритикуйте пожалуйста программу08.10.2011, 04:46. Показов 2012. Ответов 20
Метки нет (Все метки)
Student.h
Student.cpp
main.cpp
0
|
||||||||||||||||
| 08.10.2011, 04:46 | |
|
Ответы с готовыми решениями:
20
Пожалуйста, покритикуйте код Шифратор пароля. Покритикуйте пожалуйста.
|
|
Делаю внезапно и красиво
1313 / 1228 / 72
Регистрация: 22.03.2011
Сообщений: 3,744
|
|
| 08.10.2011, 11:01 | |
|
Нет деструктора.
Читать не буду, многабукаф.
1
|
|
|
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
|
|||||||||||
| 08.10.2011, 11:38 | |||||||||||
|
Еще нужен, наверное, конструктор копирования
И в выражениях
А если будет более точное задание, то можно будет и на остальное посмотреть более пристально )
1
|
|||||||||||
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
||||||||||||||||||||||
| 08.10.2011, 13:05 | ||||||||||||||||||||||
|
То, что касается класса:
1) Все сеттеры не мешало бы переименовать из add_x в set_x. 2) Все геттеры должны быть константными методами т.е.
4) Во всех сеттерах перед использованием new память, что была выделена ранее, не освобождается. Как результат, утечка. 5) Отсутствует деструктор, в котором должны освобождаться выделенные ресурсы. При уничтожении объекта, опять же, утечка памяти. 6)
9) Все сеттеры в качестве параметра должны принимать const char*, а не char*. 10) Булевым переменным принято передавать значения true\false, а не 1\0. 11) Не подключён <cstring> хотя используется функция strcpy.
1
|
||||||||||||||||||||||
|
Временно недоступен
957 / 228 / 14
Регистрация: 12.04.2009
Сообщений: 926
|
||||||
| 08.10.2011, 15:32 | ||||||
|
Лучше не использовать имена для переменных, которые совпадают с названиями библиотечных функций C и C++ (в данном случае это функция free() )
1
|
||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||||||||||||
| 08.10.2011, 16:42 | ||||||||||||
|
Можно я по-придираюсь к именованию?
Возможно тут буду я не прав так как весь код не смотрел, но что Вы делаете здесь:
Ну а так код и правда большой и всё в основном строится на том чтобы заполнять правильно поля и делать нужные проверки так что лучше задайте конкретный вопрос если у Вас что-то не получается.
1
|
||||||||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 08.10.2011, 19:31 | |
|
Jupiter, а, там же не квадратные скобки, ну тогда назначение мне тем более не понятно, но видать это какая-то хитрая задумка автора.
1
|
|
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||||||||||||||||
| 09.10.2011, 00:28 [ТС] | ||||||||||||||||
|
Всем большое спасибо. Внес коррективы в программу. Дописал деструктор, удалил все сеты и решил вместо них сделать конструктор с аргументами. Возникли проблемы в объявлении массива экземпляров класса, написании копирующего конструктора и оператора присваивания. Подскажите, как это можно реализовать?
Student.h
0
|
||||||||||||||||
|
448 / 211 / 21
Регистрация: 07.10.2011
Сообщений: 462
|
|||||||||||||||||||||||||||||||
| 09.10.2011, 01:44 | |||||||||||||||||||||||||||||||
|
1) оператор присваивания не может быть void. Он должен возвращать ссылку на объект, для которого вызван
1
|
|||||||||||||||||||||||||||||||
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
||||||||||||||||||||||||||||||||||||||
| 09.10.2011, 01:54 | ||||||||||||||||||||||||||||||||||||||
1
|
||||||||||||||||||||||||||||||||||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||
| 09.10.2011, 02:31 | ||
|
Добавлено через 3 минуты Сстоп, но ведь по коду там дальше идёт копирование в этот участок памяти отведённый под один символ всей полученной строки в аргументах функции и никакими проверками насчёт размера строки в виде указателя на char там и не пахнет ...хотя может это автор хотел передать через указатель на char этой функции один символ ... в общем я окончательно запутался, нужно слово автора по поводу назначения этой функции и что же она должна делать.
0
|
||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
||||||
| 09.10.2011, 04:20 [ТС] | ||||||
|
Я хотел выделить память под символьный массив, просто ошибся
Добавлено через 1 час 23 минуты rangerx, aeshes, спасибо за помощь. Остался последний вопрос: вот у меня есть функции записи в файл и чтения с файла в бинарном режиме. Если записать и считать с файла не закрывая программу, то все нормально, а если записать в файл, закрыть программу, снова запустить и попытаться считать с файла, то ничего не выводит и более того, программа аварийно завершается. Как устранить эту ошибку и с чем она может быть связанна?
0
|
||||||
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||
| 09.10.2011, 13:41 | ||
|
MrGluck, попробуйте перед чтением файла устанавливать положение в начало файла через seekg, это по поводу вашего последнего вопроса, хотя не ясно что у вас там за s[j], это глобальная какая-то переменная чтоли, в общем попробуйте пока вручную устанавливать положение для чтения в начало файла, а если не поможет то будем искать другую возможную проблему )
1
|
||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|
| 09.10.2011, 15:59 [ТС] | |
|
0
|
|
|
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
| 09.10.2011, 16:45 | |
|
MrGluck, ну тогда наверняка у Вас где-то ошибка не в этой функции, смотрите своих студентов - глобальный массив на n элементов, может вы задаёт его не достаточным по размерам для того чтобы всех студентов считывать, попробуйте задавать его гораздо большим (в main) чем студентов в файле перед считыванием, а вообще глобальные переменные - зло, теперь сложно разобраться читая Ваш код.
0
|
|
|
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
|
||||||
| 10.10.2011, 13:51 | ||||||
|
MrGluck, так сохранять\читать объекты класса нельзя(в данном случае именно "нельзя", а не "не рекомендуется")... Вообще, я бы советовал тебе сохранить всё в текстовом виде(просто, надёжно, и переносимо
). P.S. весь код в main.cpp не мешало бы переписать. Или хотя бы исправить явные ошибки вроде
1
|
||||||
|
Форумчанин
8216 / 5047 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
|
|||
| 10.10.2011, 18:44 [ТС] | |||
0
|
|||
| 10.10.2011, 18:44 | |
|
Помогаю со студенческими работами здесь
20
Покритикуйте, пожалуйста! Покритикуйте пожалуйста Покритикуйте пожалуйста Покритикуйте пожалуйста
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вот уже год прошел, как у меня домен в reg.ru ...
Etyuhibosecyu 16.04.2026
И ничего они мне не сделали. Если отвязать карту, никакие услуги они не навяжут. Я бы с радостью продлил еще на два года, чтобы не мучиться с временным доменом и меня уже знали по red-star-soft. com,. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
|