wayland數據結構之wl_array

struct wl_array {
/** Array size */
size_t size;
/** Allocated space */
size_t alloc;
/** Array data */
void *data;
};


數組結構體:data保存實際的數據,size保存實際數據的大小,alloc保存當前data總共分配的大小(malloc/realloc分配的大小)。
其中,alloc總是大於size,因爲空間總要比保存的數據大才行,另外當往數組裏面插入數據的時候,alloc不夠大了,

那麼就會以當前alloc大小翻倍的大小重新分配內存。


用法:

wl_array_add 添加一個數組成員! (函數內部自動申請連續內存)

該函數傳入一個大小,返回該大小內存的地址,用來存放該數組成員。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章