这个问题有些棘手,但是很简单。
在C中有一个共享代码,我想“禁止”某些功能(通常为system()
)。将有一个替换功能(例如my_system()
)。此替换功能将使用原始功能,但具有集成的检查功能。
我进行了一些研究,找到了关键字poison
:
#pragma GCC poison system
我可以在编译指示之前声明我的自定义函数:
int my_system (const char *line){
...
system(line_ok);
...
}
这是正确的方法吗?