0
// Foo.cpp

int whatScopeAmI = 0;

Foo::Foo() {
 // source code
}

变量的作用域是什么whatScopeAmI

4

2 回答 2

3

该变量是具有程序范围的全局变量,因为它是在任何块之外定义的:

在块外声明的变量称为全局变量。全局变量具有程序范围,这意味着它们可以在程序中的任何地方访问,并且只有在程序结束时才会被销毁。

于 2012-04-19T20:19:44.417 回答
3

它是全球性的,在程序中随处可用。

如果不同的翻译单元有一个extern int whatScopeAmI;声明,它将引用同一个变量。

如果变量被声明为static int whatScopeAmI = 0;它将具有内部链接,并且仅在当前翻译单元中可用。

于 2012-04-19T20:21:54.140 回答