Программа для создания кроссвордов, Обсуждение программы и кода |
Здравствуйте, гость ( Вход | Регистрация )
Программа для создания кроссвордов, Обсуждение программы и кода |
xwicked |
2.8.2011, 14:50
Сообщение
#1
|
Студент Группа: Участник Сообщений: 66 Регистрация: 2.8.2011 Из: Старый Оскол Пользователь №: 2781 Спасибо сказали: 0 раз(а) Репутация: 0 |
Здравствуйте! Есть одна программа для создания кроссвордов. Она состоит из двух частей: создание и отгадывание. Прошу её код хорошо покритиковать. Для остальных, чтобы могли посмотреть на её работу, дам ссылки на бинарники 32-бит: создание, отгадывание. Qt-4.5.3. Проекты OpenSource под GPLv2. Ссылки на SourceForge.net - создание, отгадывание. Это мой первый код на C++(Qt). Жду комментариев Добавлю небольшое описание: Сетка кроссворда представлена обычной таблицей TableCrosswordEdit(QTableWidget), слова загружаются в список слов ListWord(QStringList), толкования(вопросы) находятся в списке вопросов ListQuestions(QListWidget). Структура файла - динамическая. Когда писал программы на Delphi - использовал статику - расходовалось лишнее дисковое пространство . XWC: Пароль, количество строк, количество столбцов, ширина(высота) ячейки таблицы, шрифт, структура таблицы(w + 1(x) - белая ячейка, b + 1( c ) - чёрная), строка с данными CrosswordData(QString).
CrosswordData: цикл по количеству слов(q, QChar(номер слова), QChar(координата строки в сетке), QChar(координата столбца в сетке), направление слова в сетке), цикл по количеству слов(W, QChar(номер слова), QChar(длина слова), само слово), цикл по количеству вопросов(Q, QChar(номер вопроса), QChar(длина вопроса), сам вопрос).
Шаблон кроссворда(XWTPL) таже структура, но без пароля и без CrosswordData. Состояние сохранения(tmpcross): цикл по количеству слов(W, QChar(номер слова), QChar(длина слова), само слово). |
|
|
Litkevich Yuriy |
23.8.2011, 9:42
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
1. громоздкость самого формата. Давай, сохрани туда вектор или мапу это элементарно, по сравнению с XMLНепереносимость и трудность переходов между версиями. Байт влево , байт вправо - расстрел на месте. это смотря как опишешь формат.Ещё один интересный момент: как думаешь, что сохранится в файл, если запишешь туда переменную типа B ? приведи тотже пример только с XML
|
|
|
Текстовая версия | Сейчас: 26.11.2024, 13:56 |