|
看内核代码,包括一些其他的代码,经常能看到前导“__”的函数命名方法,比如,内核提供的双向循环列表,定义在include/linux/list.h里就有这样的定义:
- static inline void __list_add(struct list_head *new, struct list_head *prev, struct list_head *next)
- {
- next->prev = new;
- new->next = next;
- new->prev = prev;
- prev->next = new;
- }
复制代码
之后又封装了一层没有前导"__"的
- static inline void list_add(struct list_head *new, struct list_head *head)
- {
- __list_add(new, head, head->next);
- }
复制代码
我想请问这除了是更好的封装意外有什么别的意思吗?
为什么要用前导“__”的函数命名法,有什么规则吗?谢谢。 |
|