我有一些遗留代码,它使用宏定义
#ifdef def_STATIC
#define STATIC static
#else
#define STATIC
#else
#endif
我了解使用STATIC
将有助于根据def_STATIC
限制变量的范围
但在什么情况下使用这种做法?
它有什么用?
答案 0 :(得分:8)
我自己从未遇到过这样的宏,但根据这个:"XFS removal of #define STATIC static
"源它用于禁用静态函数,因为GDB无法正确调试静态内联函数。这就是为什么这个宏被用来暂时使它们非静态的原因。
如果我错了,纠正我,我只是用谷歌搜索:) 一个有趣的问题真的)