这个程序的返回结果应该是什么 (100分)

  • 主题发起人 主题发起人 qiaohj
  • 开始时间 开始时间
Q

qiaohj

Unregistered / Unconfirmed
GUEST, unregistred user!
using System;
namespace test
{
public class Admin : System.Web.UI.Page
{
protected int a=0;
private void InitializeComponent()
{
this.a=0;
}
void function1()
{
a=1;
Console.write(a.ToString());
}
void function2()
{
Console.write(a.ToString());
}
}
}
我认为是1,1
但是为什么返回的是1,0呢?
(注:function1和function2是由两个事件驱动的)
 
有人知道为什么吗?
 
因为a是一个非静态变量
如果a被声明为static
则返回的就是1,1
 
a=0的作用范围是 fun1 和fun2
但是,在 fun1 中又定义了 a=1 所以 把 a=0屏蔽了
 
太简单了
function1 中a是局部的
function2 中a是全局的
 
老大们,看清楚再说。我没有声明int a ,我一直在用a=0 a=1
只是我对同一个类对象的属性进行付值,问题不在这里。
我已经找到我的问题在哪里了,我写的是一个web form,每次事件驱动以后,变量都要进行初始化,所以……
嘿嘿,我忘记了http协议是指向无状态连接的,不好意思,自己倏忽了。
 
接受答案了.
 
后退
顶部