首页 > 代码库 > 变量的作用范围

变量的作用范围

1.类中所有变量的默认修饰符是private。

2.局部变量必须先初始化才能使用,全局变量(类的成员变量)可以不初始化,默认值为0;

技术分享
 1 static void Main(string[] args)
 2         {
 3             //M();
 4             //M1();
 5             //M2();
 6 
 7             int m;
 8             if (n > 5)
 9             {
10                 m = 1;
11             }
12             else
13             {
14                 m++;
15             }
16 
17             Console.ReadKey();
18         }
19 
20         static int n = 10;
View Code

如上代码,局部变量m没有赋值,所以不能使用m(m++报错)。

 

Q:

如图中的代码,输入的结果是?(10,11,12)

技术分享
 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             M();
 6             M1();
 7             M2();
 8             Console.ReadKey();
 9         }
10 
11         static int n = 10;
12 
13         static void M()
14         {
15             Console.WriteLine(n);
16         }
17 
18         static void M1()
19         {
20             n++;
21             Console.WriteLine(n);
22         }
23 
24         static void M2()
25         {
26             n++;
27             Console.WriteLine(n);
28         }
29 
30     }
View Code

n初始化的值是10,调用M1后,赋值一次,n=11,调用M2后,赋值一次,n=12.不要与值类型传参混淆了。(值类型传递的是副本,所以最初的n的值不会改变,这是错误的思想,这里是赋值,不是传参)。

变量的作用范围