为什么nginx不直接使用基本类型?

时间:2013-09-04 02:53:32

标签: c nginx

代码来自ngx_config.h

typedef intptr_t        ngx_int_t;
typedef uintptr_t       ngx_uint_t;
typedef intptr_t        ngx_flag_t;

intptr_t的原型是int,与uintptr_t对应的是u_int。

似乎是由nginx设计者设置的复杂类型层次结构。我很困惑为什么他们不直接使用基本类型?

实际上,这种类型的层次结构使代码有点复杂。

我知道当你尝试从A到B修改某种类型时,这种层次结构可以很容易,但只需更改一行代码,这也可以带来更好的可移植性,即更改typedef A xxtype to typedef B xxtype,但我想知道这种类型的层次结构是否在nginx中过度使用?这里的任何人都可以找到关于使用员工的任何线索吗?

更重要的是,您还可以了解有关此类设计的更多好处或窍门:)

0 个答案:

没有答案