一.作用域
每一个变量,都有一个有效范围。在这个范围之内,这个变量是可以访问的
二.c++中标识符的作用域有
1.函数原型作用域
2.块作用域(局部作用域)
3.文件作用域
4.命名空间作用域
5.类作用域
第一种:函数原型作用域
特点:此作用域为c++程序中最小的作用域,生存周期最短
#include<iostream>
using namespace std;
int max(int x);//声明一个max函数,参数x的作用域最小,只在括号内有作用
int main()
{
return 0;
}
第二种:块作用域
举例1
void fun()
{
int a;
{
int a;
cout<<a<<endl;
}
cout<<a<<endl;
}//第4行到第7行是一个块,块里面定义的a,只在块里面起作用
举例2
{
int a; //a的作用域起始处
scanf("%d", &a);
if(a < 0){ //b的作用域起始处
int b;
b -= a;
} //b的作用域结束处
} //a的作用域结束处
第三种:文件作用域(在整个程序运行中都起作用)
#include<iostream>
using namespace std;
int i;// 整个程序运行中都起作用
int main()
{
.....
return 0;
}