哈喽,天气冷了,注意保暖哈
下面是我的问题哈
1)在按钮事件之下,定义一个int a = 0; 我们知道这个a是个局部变量,为什么会是个局部变量呢?按钮事件之下 的定义变量为什么会是局部变量呢?
1 private void button4_Click(object sender, EventArgs e) 2 { 3 int a = 0; 4 }
2)如何定义一个全局变量a呢?
是不是要static int a = 0;
如果是,那么应该把static int a = 0;放在哪个控件的方法之下呢?
总不能随便放个位置吧?
首先,全局变量的作用域为整个程序,而局部变量的作用域为当前函数或循环等。
然后回到你的提问:
(1)我们来看看你给出的程序段:
变量a,是在button4_Click这个方法内部定义的,那它的作用域当然只能是该方法的内部,也就是局部变量,这一点可以理解吧。
(2)本质上C#中没有全局变量的概念,可以定义一个common类,通过静态变量来存放所有需要的全局变量,调用的时候通过common来调用即可,如:
public static class common // static 不是必须 {private static string name = "cc"; public static string Name { get { return name;} set { name = value;} } }
调用的时候使用“命名空间.common.属性名”即可,例如 :
string m_name = common.Name ;
不知道我这样描述,你是否明白,如果有不明白的,可以私信我。
谢谢你。
我翻译一下,你看翻译的对不对,不对的地方你指正下哦。
1)public static class common:定义一个公共类common
2)private static string name = "cc"; 声明仅允许这个类成员访问的静态变量name,并给她初始值CC
3)public static string Name 声明公共类静态变量Name
4)get { return name;} set { name = value;} 读取一个name 的值,并将value赋值给她。
@绿绿山水:
4)get是获取属性的值,set是为属性赋值。实际上,如果没有特殊要求,上面那个类你可以简写为:
public class common { public static string Name; }
找本C#的入门书,翻到 “作用域”那一节。