(const) 变量的范围未定义为 extern 或 static
Scope of (const) variable when is not defined as extern or static
我有一些我想成为全局的常量变量,其中一些应该只在定义的文件中可用。所以我使用 extern 和 static 关键字,像这样:
extern const int kMaxHealth = 100;
static NSString * const kName = @"Name";
这只是一个例子,它们在不同的文件中定义,所以这不是真实情况...
但是没有修饰符定义的变量作用域是多少,像这样:
const int kMaxHealth = 100;
kMaxHealth 现在是外部的,还是静态的,还是有一些其他范围?
它与没有 const
的普通变量具有相同的范围,但不允许您为变量分配新值。
const int kMaxHealth = 100;
kMaxHealth
只是一个全局变量。在文件范围内定义的非静态变量可以具有外部链接。例如,在任何头文件中,您可以将其用作 -
extern const int kMaxHealth;
我有一些我想成为全局的常量变量,其中一些应该只在定义的文件中可用。所以我使用 extern 和 static 关键字,像这样:
extern const int kMaxHealth = 100;
static NSString * const kName = @"Name";
这只是一个例子,它们在不同的文件中定义,所以这不是真实情况...
但是没有修饰符定义的变量作用域是多少,像这样:
const int kMaxHealth = 100;
kMaxHealth 现在是外部的,还是静态的,还是有一些其他范围?
它与没有 const
的普通变量具有相同的范围,但不允许您为变量分配新值。
const int kMaxHealth = 100;
kMaxHealth
只是一个全局变量。在文件范围内定义的非静态变量可以具有外部链接。例如,在任何头文件中,您可以将其用作 -
extern const int kMaxHealth;