事件应该是类的成员是吧,那么他是什么类型的哪?应该是方法,是不是值类型的?应该是引用的吧
有下面的代码请帮忙解释谢谢 class Program
{
public event EventHandler print;//类的一个成员对象
public void dothings()
{
if (print != null)
{
print(this, new EventArgs());
}
}
static void Main(string[] args)
{
Program pro = new Program();
T t = new T(pro.print);//在这里传入成员
//T t = new T(pro) 如果这样传入没有问题,所以貌似值类型的呵呵
pro.dothings();//但是下面没有调用 }
}
class T
{
public T(EventHandler e) //public T(Program e){e.print+=dotings;}
{ e += dothings; }
public void dothings(object o, EventArgs e)
{ Console.WriteLine("##########"); }
}
有下面的代码请帮忙解释谢谢 class Program
{
public event EventHandler print;//类的一个成员对象
public void dothings()
{
if (print != null)
{
print(this, new EventArgs());
}
}
static void Main(string[] args)
{
Program pro = new Program();
T t = new T(pro.print);//在这里传入成员
//T t = new T(pro) 如果这样传入没有问题,所以貌似值类型的呵呵
pro.dothings();//但是下面没有调用 }
}
class T
{
public T(EventHandler e) //public T(Program e){e.print+=dotings;}
{ e += dothings; }
public void dothings(object o, EventArgs e)
{ Console.WriteLine("##########"); }
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货