Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2013, 21:06   #1
JoberLord
Пользователь
 
Аватар для JoberLord
 
Регистрация: 28.03.2010
Сообщений: 38
Восклицание Динамическая структура

Доброго времени суток. Пишу СУБД на чистых c/c++ столкнулся с проблемой занесение и чтение данных в таблицу. Структура файла такая:
первый блок с информацией о таблице, следующие n блоков содержат в себе описание полей таблицы, после описание полей я планирую записывать данные самой таблицы. Но я не могу реализовать структуру данных которая должна образовываться в следствии чтения n блоков с описание полей. Т.е. как я понял мне нужно что то вроде динамической структуры, гугл мне не помог. Надеюсь на вас.
Ниже приведу 2 структуры которые пишутся в файл

Код:
//второй блок с данными о полях таблицы
//структура с описанием поля таблицы
// n колличество
struct data_fild{ 
	char type[7]; //тип поля
	int len; //допустимых значений
	char name[30]; //имя поля
};


//первый блок с информацией о таблице (единственный)
struct header_db_table{
	char name[20]; //название таблицы
	char date_create[12]; //дата создания
	char date_change[12]; //дата изменения
	int num_fild; //количество полей в таблице
	int num_lines; //количество занесенных данных в таблицу
};
я предполагаю что новая структура в процессе работы программы должна получится вот такая
Код:
data_fild temp;
struct data_table{
	temp.type[temp.len];
	temp.type[temp.len];
	temp.type[temp.len];
	temp.type[temp.len];
//n количество
}

//это всего лишь набросок, схема того как я представляю созданную структуру
//и я знаю что это не правильно объявленная структура
Расскажите мне пожалуйста как создать "динамическую структуру" если это возможно.
Если нет то предложите свой вариант реализации таблицы у меня других нет(

Последний раз редактировалось JoberLord; 22.05.2013 в 21:10.
JoberLord вне форума Ответить с цитированием
Старый 23.05.2013, 11:36   #2
Airhand
Пользователь
 
Аватар для Airhand
 
Регистрация: 23.08.2011
Сообщений: 55
По умолчанию

Не лезьте в динамику, там распределение памяти и куча ещё всего. Лучше используйте std::vector< data_fild>. Он находится в заголовке <vector>.
"Пока бабка не смоет косметику, русский мужик не перекрестится" (C) Кто-то
Airhand вне форума Ответить с цитированием
Старый 25.05.2013, 09:28   #3
Kukurudza
Форумчанин
 
Регистрация: 02.06.2011
Сообщений: 282
По умолчанию

не используйте вектор для базы данных. используйте std::list. память у вас динамическая под таблицу.
Kukurudza вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическая структура (списки) stalker123a4 Помощь студентам 2 19.12.2011 22:27
динамическая структура Тимурка Помощь студентам 0 20.04.2011 17:37
Динамическая структура. triasoft Фриланс 5 02.06.2010 01:47
Динамическая структура Nitriyc Помощь студентам 0 18.12.2009 17:51
динамическая структура o4arova6ka90 Помощь студентам 0 17.10.2009 14:05