Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
YouDoItWrong
46 / 46 / 7
Регистрация: 29.10.2011
Сообщений: 154
#1

key-value база данных - C++

27.11.2013, 00:54. Просмотров 435. Ответов 4
Метки нет (Все метки)

Есть интерфейс к БД:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Database {
public:
    Database();
    ~Database();
 
    int open(const std::string path, 
        DatabaseOpenMode mode,
        uint64_t hashTableSize,
        uint64_t keySize,
        uint64_t valueSize);
 
    int get(const void * key, void * buffer);
    int put(const void * key, const void * value);
    void close();
private:
    void dbClose(DatabaseInfo * dbInfo);
    DatabaseInfo * m_dbInfo;
};
1) Чем можно заменить void*.
2) get принимает key и буфер, в который будет записано value. Но передавать буфер, это как-то криво, на мой взгляд, что можно с этим сделать (void* возвращать тоже не хочется).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2013, 00:54
Здравствуйте! Я подобрал для вас темы с ответами на вопрос key-value база данных (C++):

Удалённая база данных - запрос и вывод данных - C++
допустим у меня есть удалённая база данных в которой хранятся данные. можно ли через программу запросить эти данные и вывести в программе в...

Использование псевдопеременных: bd (3,5) = s, где bd - база данных, s - элемент базы данных, тогда с 3 по 5 элементы базы данных заменить на элемент s. - C++
всем доброго времени суток! есть у меня класс bd, массив элементов этого класса table, а вот сам метод: int copyTable(int a, int b) {...

ошибка: need 'typename' before 'Dictionary<Key, Value>::Node_key' because 'Dictionary<Key, Value - C++
привет всем! почему выскакивает ошибка /home/september/console/tabld_node/dictionary.cpp:93: ошибка: need 'typename' before...

База данных "Телеателье": создать систему управления базой данных (СУБД) - C++
Задача: Создать систему управления базой данных (СУБД) в которой предусмотреть следующие режимы: создание БД, вывод БД, добавление...

База данных - C++
Народ, помогите найти ошибку, плиз. База данных компьютерных игр (пример – www.ag.ru), в которой каждая игра характеризуется...

база данных - C++
скиньте кто то пример базы данных на си!!!!а то яч не знаю с чего начать и как ее сделать!пожалуйста!! Добавлено через 6 часов 39...

4
gazlan
3133 / 1909 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
27.11.2013, 04:08 #2
Цитата Сообщение от YouDoItWrong Посмотреть сообщение
криво, на мой взгляд
Это у вас взгляд кривой. В интерфейсе все правильно.
1
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.11.2013, 10:55 #3
Цитата Сообщение от YouDoItWrong Посмотреть сообщение
1) Чем можно заменить void*.
Можно char*. Но главное - зачем? void* - это обобщенный указатель, который говорит, что тип данных неизвестен.
Цитата Сообщение от YouDoItWrong Посмотреть сообщение
передавать буфер, это как-то криво
А что бы Вы хотели передавать?
1
YouDoItWrong
46 / 46 / 7
Регистрация: 29.10.2011
Сообщений: 154
27.11.2013, 12:24  [ТС] #4
Эм… Я думал, может быть, существует «более красивое решение», чем передавать голый указатель. Ну да ладно, спасибо за ваши ответы.
0
I.M.
565 / 548 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
27.11.2013, 12:29 #5
YouDoItWrong, если тип ключа известен, то, как минимум, это убирает половину void*
какие типы данных планируется читать/писать в бд? может ли так получится, что для некоторого типа данных необходимо будет делать дополнительные действия?
всегда есть шаблоны, которые заменят void* на T*
в каком месте будет идти каст после вызова метода get?
0
27.11.2013, 12:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2013, 12:29
Привет! Вот еще темы с ответами:

база данных - C++
Собственно, хочу написать программу с базой данных. Самое главное, хочу разобраться в совместном использовании классов, списков и...

База данных - C++
задание: Написать программу для работы с базой данных &quot;Почта&quot; • номер пересылки • адрес назначения • стоимость пересылки • вес ...

база данных С++ - C++
задание: Написать программу учета подписчиков на периодические издания в почтовом отделении Каждая запись содержит: • Фамилия И.О....

База данных - C++
Здравствуйте,помогите написать: Биржа труда. База безработных: анкетные данные, профессия, образование, место и должность последней...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru