![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C#
KathyLiu
这个作者很懒,什么都没留下…
展开
-
C#——委托
委托类型表示对具有特定参数类表和返回类型的方法的引用,类似于函数指针,但又有所不同。C#中的委托是面向对象且类型安全的。C#中的委托既可以封装对象成员又可以封装方法。 C#使用委托来提供相同的功能,它将方法作为对象封装起来,允许在运行时间接地绑定一个方法调用。 委托是强类型的,对委托的调用也是强类型的。假如数据类型不匹配C#编译器会报错。 委托是一个原创 2011-11-30 13:45:10 · 626 阅读 · 0 评论 -
c#泛型约束
C#泛型约束分为:基类约束、接口约束、struct/class约束(值类型/引用类型约束)和构造器约束,另外还有一种where T:U,指定类型实参T必须是类型实参U或者是U的派生类,称之为裸类型约束。where子句之间没有顺序,但where内部各种类型约束之间有次序要求,依次为:基类型/struct/class类型、接口类型、构造器类型。 基类约束和接口约束的语法较为简单:w原创 2011-11-30 16:33:50 · 723 阅读 · 0 评论 -
c#4.0文件操作
File类:提供了一系列静态方法进行创建、删除、移动和打开操作,并协助创建FileStream对象。FileInfo类提供实例方法。 Stream抽象基类:支持读取和写入字节,集成异步支持,默认实现根据其相应的异步方法来定义同步读取和写入,所有表示流的类都从该类继承。 流涉及三个基本操作:读取、写入和查找。 Directory类:提供创建、移动和枚举目录和子目录的静态方法。Directory原创 2011-12-06 22:11:15 · 335 阅读 · 0 评论 -
C#中结构与类的区别
结构与类的区别: 结构是值类型,类是引用类型所有结构都是隐式继承自System.ValueType,而后者继承自object类。结构类型永远不能是抽象的,且始终为隐式密封的。结构不支持继承对结构型变量进行赋值将创建所赋值的一个副本,而对一个类类型变量进行赋值只是添加了一个引用结构的默认值的生成方式为:将所有值类型的域设置为它们的默认值,并将所有的引用类型的域设置为null使用装箱和拆箱操作在原创 2011-12-06 23:17:24 · 233 阅读 · 0 评论 -
C#平台互操作性
C#通过3种方式提供支持: 通过平台调用(Platform Invoke,P/Invoke)来调用非托管DLL所公开的API通过不安全代码访问内存指针和地址通过COM Interop(COM互操作) 平台调用代码编写应谨记的指导原则: 核实确实没有托管类已经公开你想要的API将API外部方法定义为private,或者在i暗淡的情况下定义为internal围绕外部方法提供公共包装方原创 2011-12-07 00:01:13 · 384 阅读 · 0 评论 -
浅谈C#闭包
关于闭包的解释如下: 闭包是可以包含自由(未绑定到特定对象)变量的代码块;这些变量不是在这个代码块内或者任何全局上下文中定义的,而是在定义代码块的环境中定义。 可以将C#中的闭包理解为存在于运行环境中的自由变量,在该闭包作用域内可以任意修改该变量,另外,它亦会被隐藏,如以下面的代码为例: public class TCloser{ publi原创 2012-06-04 13:52:14 · 318 阅读 · 0 评论