2011年12月19日

C# Attribute

摘要: [AttributeUsageAttribute(AttributeTarget.All),AllowMultiple = true, Inherited = true]class MyNewAttribute: System.Attribute{ //} 特性,就是为目标元素,可以是数据集、模块、类、属性、方法、甚至函数参数等加入附加信息,类似于注释,但是可以在运行期以反射的方式获得。定制特性主要应用在序列化、编译器指令、设计模式等方面。多个特性可以应用于同一元素,特性间以逗号隔开,以下表达规则有效:[AttributeUsage][ Flags]、[AttributeUsage, ... 阅读全文

posted @ 2011-12-19 14:43 cknife 阅读(303) 评论(0) 推荐(1) 编辑

虚函数

摘要: 若一个实例方法声明前带有virtual关键字,那么这个方法就是虚方法。虚方法与非虚方法的最大不同是,虚方法的实现可以由派生类所取代,这种取代是通过方法的重写实现的(以后再讲) 虚方法的特点: 虚方法前不允许有static,abstract,或override修饰符 虚方法不能是私有的,因此不能使用private修饰符 虚方法的执行: 我们知道一般函数在编译时就静态地编译到了执行文件中,其相对地址在程序运行期间是不发生变化的, 而虚函数在编译期间是不被静态编译的,它的相对地址是不确定的,它会根据运行时期对象实例来动态判断要调用的函数, 其中那个申明时定义的类叫申明类,那个执行时实例化的类叫实例类 阅读全文

posted @ 2011-12-19 14:05 cknife 阅读(267) 评论(0) 推荐(0) 编辑

Application.Idle 事件

摘要: 發生在應用程式處理完畢並即將進入閒置 (Idle) 狀態時。如果您有工作必須在執行緒成為閒置之前執行,附加它們至這個事件。由於這是靜態事件,因此當您的應用程式被處置時,應中斷與事件處理常式的連結,否則會發生記憶體遺漏的情形。下列程式碼範例會示範這個成員的用法。在此範例中,事件處理常式會報告 Idle 事件的發生。此報表會幫助您了解事件發生的時機並可協助您偵錯。若要報告多個事件或是經常發生的事件,請考慮以 Console.WriteLine 取代 MessageBox.Show,或是將訊息附加至多行的 TextBox。若要執行此範例程式碼,請將它貼到 Windows Form 中,並確定此事件處 阅读全文

posted @ 2011-12-19 13:56 cknife 阅读(639) 评论(0) 推荐(0) 编辑

导航