上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 14 下一页
摘要: 继上篇《委托一》http://www.cnblogs.com/fjsnail/archive/2013/06/14/3134871.html之后,今天继续学习委托。貌似很久没有二了,下来开始。正如上篇介绍,委托就像是一个类,实际上他的申明就像是一个类delete void Feedback(int value);下面介绍一个比较全面的例子,例子比较好理解,在第一篇中有讲他的详细定义这是简化的委托调用过程Feedbackfb3=newFeedback(print);//最简单的调用委托方式:声明委托----指明回调函数-----执行委托回调函数fb3.Invoke(15);//可以没有invok 阅读全文
posted @ 2013-08-13 15:47 Jackvin 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 一个交换两个值得函数,staticvoidMain(string[]args){ stringn1="ni1",n2="mi2";swap(refn1,refn2); Int32m1=111,m2=222;swap(refm1,refm2);Console.ReadKey();} privatestaticvoidswap(refTo1,refTo2){Ttemp;temp=o1;o1=o2;o2=temp;Console.WriteLine("o1:"+o1+"o2:"+o2);}一个方法,能够用于不同类型的参数 阅读全文
posted @ 2013-08-13 11:44 Jackvin 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 泛型介绍:范型类和范型方法同事具备可重用性、类型安全和效率,这是非范型类和非范型方法无法具备的。所谓范型,即通过参数化类型实现同一份代码上操作多种数据类型,范型编程是一种编程范式,它利用“参数化类型”将类抽象化,从而达到更灵活的复用。 机制:C# 泛型类型替换是在运行时执行的,从而为实例化的对象保留了泛型类型信息。C#泛型代码在被编译为IL代码和无数据时,采用特殊的占位符来表示泛型类型,并用专有的IL指令支持泛型操作。而真正的泛型实例化工作以"on-demand"的方式,发生在JIT编译时。 举例:泛型通常用与集合以及作用于集合的方法一起使用。.NET Framework 阅读全文
posted @ 2013-08-12 23:27 Jackvin 阅读(493) 评论(0) 推荐(0) 编辑
摘要: 我首先用list实现一个单链表 class nodes { private string value; private nodes node; string result = ""; public nodes(string value):this(value,null) { this.value = value; } public nodes(string value,nodes node) { this.value = value;... 阅读全文
posted @ 2013-08-12 23:04 Jackvin 阅读(261) 评论(0) 推荐(0) 编辑
摘要: varo1=new{name="nime",age=345};Console.WriteLine("name:"+o1.name+"age:"+o1.age); varhideNameArray=new[]{o1,new{name="nime",age=345},new{name="nime",age=345}};foreach(variteminhideNameArray){Console.WriteLine("name="+item.name+"age=&quo 阅读全文
posted @ 2013-08-12 16:11 Jackvin 阅读(221) 评论(0) 推荐(0) 编辑
摘要: example1:Employ e=new Employ(){name="tome",age=23}等价于Employ e=new Employe();e.name="tome";e.age=23;example2:string s=new Employee(){name="tome",age=9}.tostring().toupper();example3:classClassRoom{privateListm_student=newList();publicListStudents{get{returnm_student;}}// 阅读全文
posted @ 2013-08-12 15:42 Jackvin 阅读(426) 评论(0) 推荐(0) 编辑
摘要: 有时候我们要想传递可变数量的参数改怎么办??Params给我们提供了一个很好的方法Parmas:1.只运用方法的最后一位参数2.这个参数只能标志任意类型的一位数组3.添加了params这个参数的方法,该方法会添加ParamArray attribute.下面举例说明:staticvoidMain(string[]args){Console.WriteLine(GetData(newInt32[]{1,2,3,4}));Console.WriteLine(GetData(1,2,3,3));Console.ReadKey();} publicstaticstringGetData(paramsI 阅读全文
posted @ 2013-08-12 14:47 Jackvin 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 下面举例说明扩展方法:为StringBuilder添加一个index方法新建类:StringBuilderExtension 说明:类必须是静态的,公共的。类的方法中第一个参数需是调用对象对应的类型,并加this(这样就可以点出来了)publicstaticclassStringBuilderExtension{//////扩展方法,用来获取StringBuilder中某个字符的序号////////////publicstaticInt32IndexOf(thisStringBuildersb,charvalue){for(Int32index=0;index///扩展方法,用来获取Strin 阅读全文
posted @ 2013-08-09 11:52 Jackvin 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 这篇博客参照http://www.cnblogs.com/insus/archive/2013/08/08/3247078.html题目是这样的:一个txt文件,内容格式:39.4% 2013-07-09 15-38-7935.7 2013-08-09 15-38-5939.4% 2013-07-09 15-38-7935.7 2013-08-09 15-38-5939.4% 2013-07-09 15-38-7935.7 2013-08-09 15-38-5939.4% 2013-07-09 15-38-7935.7 2013-08-09 15-38-5939.4% 2013-07-09 1 阅读全文
posted @ 2013-08-09 10:47 Jackvin 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 一个类继承自另外一个类,他们的构造函数改怎么办?首先必须先声明:构造函数是不能继承的我们先看一段代码:第一段代码没有构造函数,第二段有一个,第三段有两个。从他们的MSIL可以看出,有几个构造函数就有几个.ctor的il函数。即使你没有构造函数,编译器也会调用一个空的构造函数。让我们仔细瞧瞧MSIL代码:我们可以看到每个IL中都有 instance void [mscorlib]System.Object::.ctor()由此我们可以得出。不管你有几个构造器,你都必须执行父类的构造函数,才能执行当前构造函数;同样对于继承,必须先实现父类的构造函数,才能执行自己的.ctor如果我们写一个空的构造函 阅读全文
posted @ 2013-08-08 17:33 Jackvin 阅读(2781) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 14 下一页