摘要:
术语表 Iterator:枚举器 如果你正在创建一个表现和行为都类似于集合的类,允许类的用户使用foreach语句对集合中的成员进行枚举将会是很方便的。这在C# 2.0中比 C# 1.1更容易实现一些。作为演示,我们先在 C# 1.1中为一个简单的集合添加枚举,然后我们修改这个范例,使用新的C#2.0 枚举构建方法。 我们将以创建一个简单化的List Box作为开始,它将包含一个8字符串的数组和一... 阅读全文
摘要:
本文中,我通过两个范例由浅入深地讲述了 什么是委托、为什么要使用委托、事件的由来、委托和事件对Observer设计模式的意义、.Net Framework 中的委托和事件,对它们的中间代码也做了讨论 阅读全文
摘要:
引言 本文之初的目的是讲述设计模式中的 Prototype(原型)模式,但是如果想较清楚地弄明白这个模式,需要了解对象克隆(Object Clone),Clone其实也就是对象复制。复制又分为了浅度复制(Shallow Copy)和深度复制(Deep Copy),浅度复制 和 深度复制又是以 如何复制引用类型成员来划分的。由此又引出了 引用类型和 值类型,以及相关的对象判等、装箱、拆箱等基础知识。... 阅读全文
摘要:
概述 本文是《Effective C#》一书第七节的读书笔记。通过这篇文章,我主要想向大家说明一个我们平时可能不太会注意到的问题:创建具有常量性和原子性的值类型。 从类型设计谈起 从Class到Struct 假如我们要设计一个存储收信人地址的类型(Type), 我们管这个类型叫 Address。它应该包含这样几个属性: Code highlighting produced by Actipro C... 阅读全文