vector -- 1




概述数组是 C 语言中最常用的数据类型之一,它使用整块内存,按固定大小分割,所以很容易定位到指定序号的元素,因此,在所有容器中,数组的随机访问速度是最快的但是 C 语言的数组是不能动态扩展的,所以 nginx 对他进行了一个封装,成为了类似于 C++ STL 中 vector 的数据类型具有以下优点:访问速度快元素个数不确定,并可以动态扩充内存池统一管理内存 nginx 动态数组相关的声明和定义分别在:ngx_array.h 和 ngx_array.c 两个文件中 动态数组结构 -- ngx_array_t// struct ngx_array_t // nginx 数组结构 {{{ typedef struct { void *elts; // 数组起始位置 ngx_uint_t nelts; // 数组元素个数 size_t size; // 单个元素大小 ngx_uint_t nalloc; // 空间能够容纳元素个数 ngx_pool_t *pool; // 内存池 } ngx_array_t; // }
#技术帖    #算法    #c++    #cpp   



京ICP备15018585号