crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Программа для создания тестов, Обсуждение программы и кода
xwicked
  опции профиля:
сообщение 15.8.2011, 6:36
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 66
Регистрация: 2.8.2011
Из: Старый Оскол
Пользователь №: 2781

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте!

Третья моя программа написана по наработкам второй(для создания электронных книг), поэтому содержит некоторые методы такого же названия например "openBookBase", что в последующих версиях будет исправлено на "openTestBase" :D

Программа представляет собой миникомплекс, включающий: создание, тестирование, отчёт(статистика). Версия 0.3.1 - исходник + сборки.

Скрин последней версии:


Ссылка на SourceForge.net. Код под GNU GPL v2 - OpenSource. С++(Qt).

Обсуждаем.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Алексей1153
  опции профиля:
сообщение 6.2.2012, 8:24
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Цитата(xwicked @ 26.1.2012, 23:15) *
0.4.4. Исправлено 15 ошибок(!). Появились 2-е структуры:
//Структура файла свойств
struct sFileSettings
{
     bool gRegimeViewing,//true - Режим просмотра, false - Режим редактирования
  LanguageProgram,//Язык программы
  bStandardPanel,//Состояние показа стандартной панели
  bEditPanel,//Состояние показа панели редактирования
  bFormatPanel,//Состояние показа панели форматирования
  bTimePanel,//Состояние показа панели времени
  bPointPanel,//Состояние показа панели баллов
  bLimitTime,//Ограничение времени
  bAutoStartTest;//Автоматический запуск
     QString RegimePassword;//Пароль режима
};


ой ой! Исправлено 15 ошибок, а добавлено ещё 15 ;)

Совсем-совсем не советую так оформлять структуры. Более того - не только структуры, а даже просто так объявлять переменные!

Правильно так:

struct sFileSettings
{
     bool gRegimeViewing;//true - Режим просмотра, false - Режим редактирования
     bool LanguageProgram;//Язык программы
     bool bStandardPanel;//Состояние показа стандартной панели
     bool bEditPanel;//Состояние показа панели редактирования
     bool bFormatPanel;//Состояние показа панели форматирования
     bool bTimePanel;//Состояние показа панели времени
     bool bPointPanel;//Состояние показа панели баллов
     bool bLimitTime;//Ограничение времени
     bool bAutoStartTest;//Автоматический запуск
     QString RegimePassword;//Пароль режима

//КОНСТРУКТОР ОБЯЗАТЕЛЬНО
   sFileSettings()
   {
      gRegimeViewing=false;
      LanguageProgram=false;
      bStandardPanel=false;
      bEditPanel=false;
      bFormatPanel=false;
      bTimePanel=false;
      bPointPanel=false;
      bLimitTime=false;
      bAutoStartTest=false;
   }

};



Но у меня это всё выглядело бы так (не из стремления экономить, а для удобства обнуления флагов):
Раскрывающийся текст
struct sFileSettings
{
    union
    {
        UINT32 m_AllFlags;
        struct
        {
            UINT32 gRegimeViewing  :1;//true - Режим просмотра, false - Режим редактирования
            UINT32 LanguageProgram :1;//Язык программы
            UINT32 bStandardPanel  :1;//Состояние показа стандартной панели
            UINT32 bEditPanel      :1;//Состояние показа панели редактирования
            UINT32 bFormatPanel    :1;//Состояние показа панели форматирования
            UINT32 bTimePanel      :1;//Состояние показа панели времени
            UINT32 bPointPanel     :1;//Состояние показа панели баллов
            UINT32 bLimitTime      :1;//Ограничение времени
            UINT32 bAutoStartTest  :1;//Автоматический запуск
            UINT32 :23;//резерв
        };
    };

    QString RegimePassword;//Пароль режима

    sFileSettings()
    {
        m_AllFlags=0;
    }
};


Цитата(xwicked @ 26.1.2012, 23:15) *
    QString str1, str2;
    QByteArray ba1, ba2;


- та же мигня! Что экономишь то ?

а в структуре sShelkTestVar у тебя не инициализированные в конструкторе указатели - это вообще ахтунг )

Сообщение отредактировал Алексей1153 - 6.2.2012, 8:22
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- xwicked   Программа для создания тестов   15.8.2011, 6:36
- - Litkevich Yuriy   xwicked, а как ею пользоваться?   15.8.2011, 6:51
- - xwicked   Описание: кроссплатформенная программа для создани...   15.8.2011, 9:52
- - xwicked   Здравствуйте! Вот новая версия 0.3.5. Теперь...   29.8.2011, 23:20
- - silver47   Как Вы решили вопрос с безопасностью? SQLite по ум...   30.8.2011, 5:25
|- - xwicked   Цитата(silver47 @ 30.8.2011, 6:25) Как Вы...   30.8.2011, 13:45
- - vankleef   Немного оффтоп Раскрывающийся текст В институте за...   30.8.2011, 18:26
- - xwicked   Для распространения программы между RPM-дистрибути...   21.10.2011, 16:32
- - xwicked   Продолжаем знакомиться с кодом. Версия 0.4.1 Включ...   7.11.2011, 0:52
- - xwicked   Здравствуйте! Программа продолжает совершенст...   22.11.2011, 22:26
- - xwicked   0.4.3 - это новая версия программы. Здравствуйте...   26.1.2012, 20:15
- - xwicked   0.4.4. Исправлено 15 ошибок(!). Появились 2-е ...   6.2.2012, 1:54
- - Алексей1153   Цитата(xwicked @ 26.1.2012, 23:15) 0.4.4....   6.2.2012, 8:24
- - xwicked   Алексей1153, благодарю, но конструкторы я буду осв...   6.2.2012, 13:24
- - Алексей1153   xwicked, да не, начинай уже осваивать ) Потом же и...   6.2.2012, 13:48
- - xwicked   Здравствуйте! Представляю новую версию програм...   14.2.2012, 23:03
- - xwicked   Новая и последняя на данный момент версия 1.0.0. З...   19.2.2012, 1:22
- - xwicked   1.5.2 - скачатьЦитата- Теперь сохранение свойств п...   17.11.2012, 18:42
- - xwicked   По-тихоньку идёт совершенствование программы. И се...   3.11.2013, 20:58
- - Гость   если сделаешь возможность компиляции в exe, цены т...   5.11.2014, 8:26
- - xwicked   Цитата(Гость @ 5.11.2014, 9:26) если сдел...   8.11.2014, 21:34


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.11.2024, 13:09