12 2012 档案

C#中的Dictionary
摘要:在C#中,Dictionary提供快速的基于兼职的元素查找。当你有很多元素的时候可以使用它。它包含在System.Collections.Generic名空间中。在使用前,你必须声明它的键类型和值类型。详细说明必须包含名空间System.Collection.GenericDictionary里面的每一个元素都是一个键值对(由二个元素组成:键和值)键必须是唯一的,而值不需要唯一的键和值都可以是任何类型(比如:string, int, 自定义类型,等等)通过一个键读取一个值的时间是接近O(1)键值对之间的偏序可以不定义创建和初始化一个Dictionary对象Dictionary<int,s 阅读全文

posted @ 2012-12-17 16:22 灰色无常 阅读(1326) 评论(0) 推荐(0)

C#中Abstract和Virtual区别
摘要:一、Virtual方法(虚方法) virtual 关键字用于在基类中修饰方法。virtual的使用会有两种情况: 情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法。那么在对派生类实例的调用中,该虚方法使用的是基类定义的方法。 情况2:在基类中定义了virtual方法,然后在派生类中使用override重写该方法。那么在对派生类实例的调用中,该虚方法使用的是派生重写的方法。二、Abstract方法(抽象方法) abstract关键字只能用在抽象类中修饰方法,并且没有具体的实现。抽象方法的实现必须在派生类中使用override关键字来实现。接口和抽象类:最本质的区别:抽象类是 阅读全文

posted @ 2012-12-14 15:41 灰色无常 阅读(104) 评论(0) 推荐(0)

C# ref与out
摘要:1 关于重载原则:有out|ref关键字的方法可以与无out和ref关键字的方法构成重载;但如想在out和ref间重载,编译器将提示:不能定义仅在ref和out的上的方法重载2 关于调用前初始值原则:ref作为参数的函数在调用前,实参必须赋初始值。否则编译器将提示:使用了未赋值的局部变量;out作为参数的函数在调用前,实参可以不赋初始值。3 关于在函数内,引入的参数初始值问题原则:在被调用函数内,out引入的参数在返回前至少赋值一次,否则编译器将提示:使用了未赋值的out参数; 在被调用函数内,ref引入的参数在返回前不必为其赋初值。总结:C#中的ref和out提供了值类型按引用进行传递的解决 阅读全文

posted @ 2012-12-10 18:00 灰色无常 阅读(209) 评论(0) 推荐(0)

导航