摘要:
在C#里关于定时器类有3个:System.Windows.Forms.Timer类、System.Threading.Timer类和System.Timers.Timer类。System.Windows.Forms.Timer是应用于WinForm中的,它是通过Windows消息机制实现的,类似于VB或Delphi中的Timer控件,内部使用API SetTimer实现的。它的主要缺点是计时不精确,而且必须有消息循环,Console Application(控制台应用程序)无法使用。System.Timers.Timer和System.Threading.Timer非常类似,它们是通过.NET 阅读全文
摘要:
Action<T> 泛型委托:封装一个方法,该方法只采用一个参数并且不返回值。可以使用此委托以参数形式传递方法,而不用显式声明自定义的委托。该方法必须与此委托定义的方法签名相对应。也就是说,封装的方法必须具有一个通过值传递给它的参数,并且不能返回值。当然泛型委托不只是只能支持一个参数,它最多可以支持四个参数。 泛型委托与直接显示声明自定义委托的示例比较: 1:显示声明自定义委托:delegate void DisplayMessage(string message);public class TestCustomDelegate{ public static void Main() 阅读全文
摘要:
以下内容为菩提树下的杨过根据微软MSDN整理,转贴请注明出处MSDN对于Func<T, TResult>)的官方解释: 封装一个具有一个参数并返回 TResult 参数指定的类型值的方法。下面通过几个例子对比下,就容易知道其用法:以下例子演示了如何利用委托将字符串转化为大写:delegatestringConvertMethod(stringinString);privatestaticstringUppercaseString(stringinputString)...{returninputString.ToUpper();}protectedvoidPage_Load(obj 阅读全文
摘要:
1.泛型委托“泛型类型”是可适应对多种数据类型执行相同功能的单个编程元素。定义泛型类或过程时,无需为可能需要对其执行该功能的每个数据类型定义单独版本。就好比是带有可拆卸刀头的螺丝刀。您检查需要拧动的螺丝,然后选择适合该螺丝的刀头(一字、十字、星形)。将正确的刀头插入到螺丝刀柄上后,您就可以使用螺丝刀执行完全相同的功能,即拧螺丝。螺丝刀就是泛型工具!定义泛型类型时,即使用一个或多个数据类型将其参数化。这样可允许使用代码定制数据类型以满足其要求。代码可以通过泛型元素声明若干个不同的编程元素,每个元素可使用一组不同的数据类型。但是,无论声明的元素使用哪些数据类型,它们均执行相同的逻辑。Code hi 阅读全文