在c++头文件中定义变量的范围是什么?

根据头文件中变量的定义形式,范围变化如下:

在头文件中定义静态变量,例如

静态类型var = init_value;

可以省略= init_value部分。

这相当于在引用头文件的每个源文件中定义一个名为var的类型为TYPE的静态全局变量。每个文件中的var变量都属于源文件,它们之间是不同的。

范围限定为引用头文件的源文件。


在头文件中定义变量,但不初始化值。

类型var。

在本例中,在引用头文件的所有源文件中定义并声明了一个全局变量var。


它的作用域是整个项目的所有源文件。

Var可以直接在引用头文件的源文件中使用,也可以在不引用头文件的源文件中使用

走读生类型var。

使用var。


具有初始值的变量在头文件中定义。

类型var = init_value;

当头文件只在项目中的一个源文件中引用时,将在源文件中定义全局变量,并且可以在文件中使用var。它可以在其他源文件中访问

走读生类型var。

在这种情况下,变量的范围也是整个项目。

注意,如果在多个源文件中引用头文件,则会将其视为在不同的文件中定义了具有相同名称的全局变量。这将导致编译错误,因此没有范围。



胡说叔叔
浏览 1076回答 3
3回答

收到一只叮咚

声明新的类型名来代替原有的类型名比如,typedef int INTERGER; 或 typedef float REAL;相当于用INTERGER来代表int类型,用REAL来代表float习惯上把用typedef声明的类型用大写字母表示
打开App,查看更多内容
随时随地看视频慕课网APP