delegate void DangerEvent(int vSpeed);//宣告delegate型別
class Car
{
private int _speed;
public event DangerEvent Danger; //宣告事件變數Danger
public int Speed //定義speed屬性
{
get
{
return _speed;
}
set
{
if (value > 200)
{
if (Danger != null)
{
Danger(value); //啟動事件
}
}
_speed=value;
}
}
}
class Program
{
static void Main(string[] args)
{
Car Benz = new Car();
//指定Danger事件由TooFast方法來處理
//Benz.Danger=Benz.Danger+new DangerEvent(TooFast); //這樣寫有error
Benz.Danger += new DangerEvent(TooFast);
Benz.Speed = 300; //會觸發上一行的委派事件
Console.Read();
}
static void TooFast(int vSpeed)
{
Console.WriteLine("你目前的速度是{0},超過200,請減速!!!",vSpeed);
}
}
- Oct 30 Wed 2019 19:15
delegate 委派 (再舉一例)
close
全站熱搜
留言列表
發表留言