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

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

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

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

27.11.2013, 00:54. Просмотров 402. Ответов 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* возвращать тоже не хочется).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2013, 00:54     key-value база данных
Посмотрите здесь:

ошибка: 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++
задание: Написать программу учета подписчиков на периодические издания в почтовом отделении Каждая запись содержит: • Фамилия И.О....

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

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

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

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

база данных - C++
Разработать программу для управления базой данных «Абоненты ГТС». Запись в базе данных содержит следующие поля: Ф.И.О. абонента, адрес,...

База данных - C++
Не могу разобраться что не так. Спасибо заранее! #include &lt;locale.h&gt; #include&lt;stdio.h&gt; #include&lt;stdlib.h&gt; #include&lt;string.h&gt; ...

База Данных - C++
Здравствуйте. Начал изучать программирование, пока уровень не велик. Дошёл до такого момента, что нужно написать базу данных, но пока что...

База данных - C++
Всем Привет! Есть txt Файл в нем вписана база данных. Как вытянуть из текстового файла базу в том расположении в каком она написана, и как...

База данных в С++. - C++
Дело такое: пишется проект, который будет регулярно читать и записывать информацию с файлов. Самое банальное - сделать всё через обычные...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gazlan
3130 / 1905 / 285
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
27.11.2013, 04:08     key-value база данных #2
Цитата Сообщение от YouDoItWrong Посмотреть сообщение
криво, на мой взгляд
Это у вас взгляд кривой. В интерфейсе все правильно.
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
27.11.2013, 10:55     key-value база данных #3
Цитата Сообщение от YouDoItWrong Посмотреть сообщение
1) Чем можно заменить void*.
Можно char*. Но главное - зачем? void* - это обобщенный указатель, который говорит, что тип данных неизвестен.
Цитата Сообщение от YouDoItWrong Посмотреть сообщение
передавать буфер, это как-то криво
А что бы Вы хотели передавать?
YouDoItWrong
46 / 46 / 7
Регистрация: 29.10.2011
Сообщений: 154
27.11.2013, 12:24  [ТС]     key-value база данных #4
Эм… Я думал, может быть, существует «более красивое решение», чем передавать голый указатель. Ну да ладно, спасибо за ваши ответы.
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
27.11.2013, 12:29     key-value база данных #5
YouDoItWrong, если тип ключа известен, то, как минимум, это убирает половину void*
какие типы данных планируется читать/писать в бд? может ли так получится, что для некоторого типа данных необходимо будет делать дополнительные действия?
всегда есть шаблоны, которые заменят void* на T*
в каком месте будет идти каст после вызова метода get?
Yandex
Объявления
27.11.2013, 12:29     key-value база данных
Ответ Создать тему
Опции темы

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