您好我已经开始在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;
这种方法允许我存储每个元素,但在保存期间需要大量内存分配,并从容器中返回元素。
任何人都可以查看此内容,如果有其他方法,请告诉我。
由于 阿维纳什
答案 0 :(得分:1)
以双下划线开头的名称保留给“实现”,应避免在用户代码中使用。
就个人而言,我不喜欢指针的typedef;我宁愿使用clib_object *x;
而不是clib_object_ptr x;
。
为什么需要记录对象的大小?