C 语言内联函数为什么在.h中声明称 static inline *(); 为什么通常要加上static呢?

在.h中不声明成静态不行吗?

可以不声明成静态的,另一方面虽然内联函数可以加快调用的速度,但是调用次数多的话,会使可执行文件变大,这样会降低速度。static 修饰的内联函数,一般情况下不会产生函数本身的代码,而是全部被嵌入在被调用的地方。如果不加static,则表示该函数有可能会被其他编译单元所调用,所以一定会产生函数本身的代码。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-08-18
在头文件中声明为“静态”的作用是为了将变量的链接属性改为内部,不允许其余的文件访问它,起到一个保护作用

满意请采纳,不满意请追问本回答被网友采纳
相似回答