有關於事件的概念呢,記得以前看過乙個例子,關於貓逮老鼠的,就是說,老鼠進到乙個房間裡後,貓就開始逮老鼠。說老鼠不能直接告訴貓你來逮我吧,於是就通過乙個監視器來通知貓,一旦貓看到老鼠就開始逮了,而這個監視器便是『事件』。
例子:**using
system;
using
system.collections.generic;
using
system.linq;
using
system.text;
namespace
eventdemo
; mouse m
=new
mouse();
//例項化乙隻老鼠
m.name ="
藍皮鼠"
; m.runtohome();
//進入室內
catchmouse.docatch();
//**貓的捕捉事件
console.readline();
}
} class
cat
public
void
catch() }
class
mouse
public
void
runtohome() }
public
class
catchmouse }
public
class
catcheventargs : eventargs
//事件引數類
}
} 上面這個例子呢,利用到事件引數catcheventargs,如果我們打算向事件中傳遞引數,即可利用到這個引數類。
加入上面的例子,貓只能逮住5斤一下的老鼠,那麼在觸發事件時就需要讓貓根據事件的引數來判斷該不該去逮。
**using
system;
using
system.collections.generic;
using
system.linq;
using
system.text;
namespace
eventdemo
;double
weight =5
; mouse m
=new
mouse();
m.name ="
藍皮鼠"
; m.weight
=weight;
m.runtohome();
catchmouse.docatch(weight);
console.readline();
}
}class
cat
public
void
catch() }
class
mouse
public
double
weight
public
void
runtohome() }
public
class
catchmouse
); }
}public
class
catcheventargs : eventargs
}
} demo:
陣列的一些回顧
1.陣列名的特殊性 先說結論 陣列名代表陣列首元素位址,也是乙個指標,唯讀的常量,是乙個常量指標,不能修改。陣列首元素的位址和陣列位址是兩個不同的概念 陣列名是陣列首元素的起始位址,但並不是陣列的起始位址 通過將取位址符 作用於陣列名可以得到整個陣列的起始位址 int c 200 c 1 步長四個位...
關於事件與委託的一些對比
using system private static void goodbye string str static void main string args 我的理解就是,delegate就是乙個函式的指標,用他宣告的變數實質上就是乙個函式,這就要求繫結的時候函式的返回值和引數列表必須符合del...
關於觸屏事件的一些操作
需要在你的viewcontroller裡重寫幾個方法 開始觸控的方法 void touchesbegan nsset touches withevent uievent event 觸控取消的方法 void touchescancelled nsset touches withevent uieve...