Общая библиотека структур данных в C - PullRequest
1 голос
/ 13 апреля 2011

Здравствуйте. Я начал писать общую библиотеку структур данных на C, похожую на STL. Вот ссылка . http://code.google.com/p/cstl/

Я много боролся за то, чтобы пойти дальше, имея void* в качестве базового элемента для структуры данных. и в конечном итоге структура, которая имеет два элемента

typedef struct __c_lib__object {
    void* raw_data;
    size_t size;
} clib_object, *clib_object_ptr;

Этот подход позволяет мне сохранять каждый элемент, но требует много памяти для сохранения и возврата элемента из контейнера.

Может кто-нибудь рассмотреть это, и дайте мне знать, если есть какой-либо другой подход.

Спасибо Авинаш

1 Ответ

1 голос
/ 13 апреля 2011

Имена, начинающиеся с двойного подчеркивания, зарезервированы для «реализации», и их следует избегать в коде пользователя.

Лично мне не нравятся typedefs для указателей; Я бы лучше использовал clib_object *x;, чем clib_object_ptr x;.

Зачем вам нужно записать размер объекта?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...