《C#高级编程(第六版)》泛型学习笔记(一):泛型优点和特性
摘要:泛型是CLR 2.0的一个新特性,在CLR 1.0中,要创建一个灵活的类或方法,但该类或方法在编译期间不知道使用什么类,就得以Object类为基础。而Object在编译期间没有类型安全性,因此必须进行强制类型转换,同时,给值类型使用Object类会有性能损失。泛型类使用泛型类型,并可以根据需要用特定的类型替换泛型类型。这就保证了类型安全性:如果某个类型不支持泛型类,编译器就会报错。 一、泛型有以下几个优点: 1)性能 对值类型使用非泛型集合类,在把值类型转换为引用类型,和把引用类型转换为值类型时,需要进行装箱和拆箱操作。装箱和拆箱的操作很容易实现,但是性能损失较大。假如使用泛型,就可以避
阅读全文
posted @
2011-01-13 20:38
阿寻
阅读(5109)
推荐(5) 编辑
《C#高级编程》之事件学习笔记
摘要:引用《C#高级编程(第六版)》: 基于Windows的程序也是基于消息的。这说明应用程序是通过Windows来通信的,Windows又是使用预定义的消息与应用程序通信的。这些消息是包含各种信息的结构,应用程序和Windows使用这些信息决定下一步的操作。在MFC等库或Visual Basic等开发环境推出之前,开发人员必须处理Windows发送给应用程序的消息。Visual Basic和今天的.NET把这些传送来的消息封装在事件中。如果需要响应某个消息,就应处理对应的事件。一个常见的例子是用户单击了窗体中的按钮后,Windows就会给按钮消息处理程序(有时称为Windows过程或WndProc
阅读全文
posted @
2011-01-04 22:34
阿寻
阅读(1099)
推荐(0) 编辑
C#DataTable学习心得
摘要:一、DataSet、DataTable、DataRow、DataColumn1】 在DataSet中添加DataTable DataSet.Tables.Add(DataTable) 实例: DataSet ds=new DataSet(); DataTable table=new DataTable("学生表"); ds.Tables.Add(table);2】从DataSet中读出DataTable DataTable=DataSet.Tables[0]或DataSet.Tables["表名"] 实例: DataTable table=ds[i]或DataTable
阅读全文
posted @
2010-12-30 12:03
阿寻
阅读(27453)
推荐(2) 编辑
《C#高级编程》之委托学习笔记
摘要:最近在学C#的委托,通过网络的资料和书籍,现在总结如下: 回调(Callback)函数是windows编程的一个重要部分。回调函数实际上是方法调用的指针,也成为函数指针,是一个非常强大的编程特回调(Callback)函数是windows编程的一个重要部分。回调函数实际上是方法调用的指针,也成为函数指针,是一个非常强大的编程特性。.NET以委托的形式实现了函数的指针的概念。与C/C++的函数指针不同的是.NET委托是类型安全的。也就是说C/C++的函数指针只不过是一个指向内存单元的指针,我们无法知道这个指针实际指向什么,像参数和返回类型等就无从知晓了。 当把方法传送给其他方法时,需要用到委托。
阅读全文
posted @
2010-12-30 12:00
阿寻
阅读(1131)
推荐(0) 编辑