|
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 6
|
|
Как лучше организовать данные18.11.2012, 11:14. Показов 864. Ответов 3
Метки нет (Все метки)
Добрый день.
Создаю класс CError для хранения в нём ошибок. От класса требуется хранить информацию о всех возникающих в процессе работы программы ошибках. Т.е. в функции возникла некритическая ошибка, вместо вывода её прям на месте, мы сохраняем её например таким образом: err.Set("Имя функции", REP_ERR_NO_DATA_IN_AE_MODEL, 1); В подробности вдаваться не будем. Загвоздка возникла в вопросе о том, как хранить информацию о популярных ошибках. Т.е. я хочу иметь статический список ошибок, чтобы выглядел он примерно так: {REP_ERR_NO_DATA_IN_AE_MODEL, "Нет данных", "Не нашли данных в AE_MODEL"}, {REP_ERR_NO_DATA_IN_AE_INDEX, "Нет данных", "Не нашли данных в AE_INDEX"}, {REP_ERR_NO_TABLE_AE_PARAMETR, "Отсутствует таблица", "В БД отсутствует таблица AE_PARAMETR"}, ... Каким образом лучше хранить эту информацию? 3 массива - как-то не красиво. Перечисления....тоже как-то не очень... Что можете посоветовать? Вот описание класса: typedef struct { long lCode ; char szFunkName[256]; char szUserMsg[512] ; char szDebugMsg[512]; }ST_ERROR_INFO; class CError { public: CError(CWnd* pParent = NULL); // standard constructor void Set(char* pErrFunkName, long lErrCode, int iOut); void Set(char* pErrFunkName, long lErrCode ); void Set(char* pErrFunkName, string strErrMsg, int iOut); void Set(char* pErrFunkName, string strErrMsg ); void Set(char* pErrFunkName, string strErrUserMsg, string strErrDebugMsg, int iOut); void Set(char* pErrFunkName, string strErrUserMsg, string strErrDebugMsg ); const long GetLastErrCode (); const string* GetLastErrMsg (); const string* GetLastErrUserMsg (); const string* GetLastErrDebugMsg(); private: long lMaxInd ; ST_ERROR_INFO *pErrInfo; short realloc_mem(); }; Добавлено через 13 минут Может массив структур? А как это реализовать? Можно пример?
0
|
|
| 18.11.2012, 11:14 | |
|
Ответы с готовыми решениями:
3
Как лучше сохранять данные Организовать данные указателями Организовать данные в виде линейного списка |
|
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 6
|
|
| 21.11.2012, 10:09 [ТС] | |
|
Спасибо большое за помощь.
Добавлено через 15 секунд Спасибо большое за помощь.
0
|
|
|
Неэпический
|
|||||||||
| 21.11.2012, 10:17 | |||||||||
|
Не по теме: Когда же все научатся обрамлять код тегами???
1
|
|||||||||
|
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 6
|
|
| 21.11.2012, 13:23 [ТС] | |
|
Вот теперь спасибо без сарказма. Я в общем-то и сам уже на этом остановился....потому что ничего иного не придумал.
0
|
|
| 21.11.2012, 13:23 | |
|
Помогаю со студенческими работами здесь
4
Где лучше хранить данные таблиц? Как лучше организовать массив?
как лучше организовать редирект? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|