《Effective C#》快速笔记(一)- C# 语言习惯 目录 一、使用属性而不是可访问的数据成员 二、使用运行时常量(readonly)而不是编译时常量(const) 三、推荐使用 is 或 as 操作符而不是强制类型转换 四、使用 Conditional ...
Effective C 快速笔记 C 中的动态编程 静态类型和动态类型各有所长,静态类型能够让编译器帮你找出更多的错误,因为编译器能够在编译时进行大部分的检查工作。C 是一种静态类型的语言,不过它加入了动态类型的语言特性,可以更高效地解决问题。 一 目录 三十八 理解动态类型的优劣 三十九 使用动态类型表达泛型类型参数的运行时类型 四十 将接受匿名类型的参数声明为 dynamic 四十一 用 D ...
2017-05-08 10:31 4 2517 推荐指数:
《Effective C#》快速笔记(一)- C# 语言习惯 目录 一、使用属性而不是可访问的数据成员 二、使用运行时常量(readonly)而不是编译时常量(const) 三、推荐使用 is 或 as 操作符而不是强制类型转换 四、使用 Conditional ...
《Effective C#》快速笔记 - C# 高效编程要点补充 目录 四十五、尽量减少装箱拆箱 四十六、为应用程序创建专门的异常类 四十七、使用强异常安全保证 四十八、尽量使用安全的代码 四十九、实现与 CLS 兼容的程序集 五十、实现小 ...
《Effective C#》快速笔记(二)- .NET 资源托管 简介 续 《Effective C#》读书笔记(一)- C# 语言习惯。 .NET 中,GC 会帮助我们管理内存,我们并不需要去担心内存泄漏,资源分配和指针初始化等问题。不过,它也并非万能,因为非托管资源需要 ...
《Effective C#》快速笔记(四)- 使用框架 .NET 是一个类库,你了解的越多,自己需要编写的代码就越少。 目录 三十、使用重写而不是事件处理函数 三十一、使用 IComparable<T> 和 IComparer<T> 实现 ...
《Effective C#》快速笔记(三)- 使用 C# 表达设计 目录 二十一、限制类型的可见性 二十二、通过定义并实现接口替代继承 二十三、理解接口方法和虚方法的区别 二十四、用委托实现回调 二十五、用事件模式实现通知 二十六、避免返回对内部类对象 ...
理解动态类型 C#是一种静态类型的语言,静态类型能够让编译器帮你找出更多的错误,因为编译器能够在编译时进行大部分的检查工作。 C#动态类型是为了让静态代码能够更加平滑地与其他使用动态类型的环境进行交互,如动态地使用COM、调用IronPython代码及简化反射操作。 当你需要不知道具体类型 ...
我们知道C#是一门虚拟机语言,在C#编译器首先将C#代码编译成IL代码,运行程序时CLR(Common Language Runtime,公共语言运行时)通过调用JIT(just-in-time Compiler,即时编译器)来将IL代动态即时编译成可执行的机器码。在CLR中有一个非常重要 ...
如何为我们自己的包含非托管资源的类型编写资源管理代码呢?在 .NET 中为我们提供了一种标准的销毁非托管资源的模式,这个标准的模式能够使使用者通过调用IDisposable接口正常释放掉非托管资源,也能够保证使用者在忘记释放资源时使用终结器释放。这个标准模式可以和GC配合,保证仅在最糟 ...