摘要:
转自:http://www.cnblogs.com/kk888/archive/2011/09/01/2161647.html所谓泛型,即通过参数化类型来实现在同一份代码上操作多种数据类型。泛型编程是一种编程范式,它利用“参数化类型”将类型抽象化,从而实现更为灵活的复用。 在定义泛型类时,可以对客户端代码能够在实例化类时用于类型参数的类型种类施加限制。如果客户端代码尝试使用某个约束所不允许的类型来实例化类,则会产生编译时错误。这些限制称为约束。约束是使用 where 上下文关键字指定的。下表列出了五种类型的约束:约束说明T:struct类型参数必须是值类型。可以指定除 Nullable 以外的 阅读全文
posted @ 2012-04-23 16:22
飞蛾扑火
阅读(4969)
评论(3)
推荐(3)
摘要:
转自:http://www.cnblogs.com/phoenix-rock/archive/2006/11/07/shallowcopy_deepcopy.html1. 深拷贝是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外一个对象造成影响。举个例子,一个人名叫张三,后来用他克隆(假设法律允许)了另外一个人,叫李四,不管是张三缺胳膊少腿还是李四缺胳膊少腿都不会影响另外一个人。比较典型的就是Value(值)对象,如预定义类型Int32,Double,以及结构(struct),枚举(Enum)等。考虑以下写法 int source = int.MaxValue;//(1)初始化源 阅读全文
posted @ 2012-04-23 16:16
飞蛾扑火
阅读(392)
评论(0)
推荐(0)
摘要:
“根据定义,所有的值类型都必须从System.ValueType派生,所有的枚举都从System.Enum抽象类型中派生,后者又从System.ValueType派生的” -------摘自《CLR VIA C#》;可以通过查找MSDN测试代码:class Program { static void Main(string[] args) { Program p = new Program(); int m = 1; Console.WriteLine("int m=1"); p.function(m); double n = 2.44; Console.WriteLine 阅读全文
posted @ 2012-04-23 10:57
飞蛾扑火
阅读(1207)
评论(0)
推荐(0)

浙公网安备 33010602011771号