有人能解释一下,什么时候应该在头文件中定义的全局变量或常量之前使用静电关键字吗?

例如,假设我有一个带有以下行的头文件:

const float kGameSpriteWidth = 12.0f;

const前面是否应该有static?使用static的最佳实践是什么?

推荐答案

static将变量呈现为文件的本地变量,这通常是件好事,例如参见this Wikipedia entry.

C++相关问答推荐

有什么方法可以检测SunOS上的SparcWorks吗?

C中的ATONE会扰乱SEN/CLUTE GMS应用程序中的其他字符串

在struct中调用函数,但struct在void中 *

C编译器是否遵循restrict的正式定义?

为什么sscanf不能正确地从这个字符串格式中提取所有数字?

Kdb:仅升级指定的列

一旦运行长度超过2,编译器是否会优化";strnlen(mystring,32)>;2";以停止循环?

致命错误:ASM/rwan ce.h:没有这样的文件或目录.符号链接还不够

GCC奇怪的行为,有fork 和印花,有换行符和不换行符

C11/C17标准允许编译器清除复合文字内存吗?

try 查找带有指针的数组的最小值和最大值

当用C打印过多的';\n';时输出不正确

带有数组指针的 struct 在print_stack()函数中打印随机数

I';我试着从.txt文件中读取文本,并用c计算其中的单词数量

在C中使用字符串时是否不需要内存分配?

我可以使用Windows SDK';s IN6_IS_ADDR_LOOPBACK等,尽管没有文档?

从系统派生线程调用CRT

std::malloc/calloc/realloc/free 与纯 C 的 malloc/calloc/realloc/free 有什么不同

子进程不会修改父进程中的统计信息

C 中从 Unix 纪元时间转换的损坏