类似 nginx 编译时生成函数链表
程序员文章站
2022-05-18 13:12:04
...
以下代码可能需要一定的c/c++基础。
2.cpp
需要有一些函数指针的知识
深度剖析函数指针点击这里
common.h
#pragma once typedef int (*pt)(void); void init_2();
2.cpp
#include#include "common.h" using namespace std; static pt next_pt; extern pt top_pt; int filter_2() { cout 1.cpp #include#include "common.h" using namespace std; static pt next_pt; pt top_pt; static int filter_1() { cout编译命令 g++ 1.cpp 2.cpp -g -O0
执行
./a.out
filter_2
filter_1
如果你已经编程并执行成功,请继续往下看.top_pt 为全局变量
next_pt为局部全局变量
如果你想知道
top_pt 在每次代码执行时都会变化,不断地指向新的链表头部,通过init_*函数的不断执行,一条链表就产生了。看起来就像是用全局变量组成了一条单项链表。
好吧,又是奇淫技巧,如是而已!
以上就介绍了类似 nginx 编译时生成函数链表,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
上一篇: js数组操作方法总结(必看篇)
下一篇: PHP udp的错包问题