摘要:
成员的签名中包括了名称和参数列表。每个成员的签名都必须是唯一的类型。但是只要它们的参数列表不相同,成员就能够拥有相同的名称。在类型中有两个或多个成员是相同的成员种类(方法、属性、构造器,以及等等)并且拥有相同的名称和不同的参数列表的时候,那么这个成员就可以说是被重载的。例如,Array 类包含了两个 CopyTo 方法。第一个方法获取一个数组和一个 Int32 的值,而第二个方法则获取一个数组和一个 Int64 的值。 阅读全文
2007年1月29日 #
摘要:
这些至少在程序员的世界中是一种容易被混淆的术语。它们的含意经常会被交换。 阅读全文
摘要:
我重新开始了从事编写 Mercury 指南书籍的工作。迄今为止我都是把 Parameter(参数)用来表示“出现在子句(或类型定义)头部的变量”,而把 Argument(参量)用来表示“出现在目标(或类型的实例)中的值”。换句话说,Arguments(参量)就是对 Parameters(参数)的具体化。 阅读全文
摘要:
被嵌套的类型是一些其他类型的成员类型。被嵌套的类型应该与它们的声明类型进行紧耦合并且不能与常规类型一样是可用的。被嵌套的类型容易被一些开发者所混淆并且不能够是公开可见的,除非有一个强制性的原因要这样做。在一个设计良好的库中,开发者应该极少地使用被嵌套的类型来实例化对象或声明变量。 阅读全文
摘要:
下列指南讨论了为库用户介绍的一个潜在的变化。如果你把值添加到先前已被承载的枚举中,那么现有的应用程序代码将不再是足够健壮的也不能够优雅地对新值进行处理。 阅读全文
摘要:
标记枚举被用来屏蔽位字段并且完成位比较操作。它们被正确设计并在同时能够指定多个枚举值的时候被使用。例如,你可以对任何 GenericUriParserOptions 枚举值进行组合来配置一个常规的统一资源标识符(URI)处理器。 阅读全文
摘要:
枚举提供了为强类型成员所用的常量值集合并且改进了代码可读性。枚举既可以是简单的也可以是标记。简单的枚举包含了没有在位比较操作中被组合或被使用的值。而标记枚举则是通过使用位比较操作关键字 OR 而有意被组合的。通过使用位比较操作关键字 AND 还可以对标记枚举的组合值进行检查。 阅读全文
摘要:
结构是属于值类型。它们被分配在堆栈或者内嵌空间中并且在它们超出了使用范围时候会被清除。通常,值类型的分配与清除的代价是比较小的;但是,如果它们在需要进行大量的装箱与拆箱操作的开发情节中被使用的时候,它们就会与被用来比较的引用类型一样蹩脚地被完成。关于更多信息,请参考:[C# 编程指南:装箱与拆箱]。 阅读全文
摘要:
接口为实现者必须要提供的成员集合而定义了签名。并且不能够为接口的成员提供实现的细节。例如,ICollection 接口就定义了与集合操作相关的成员。每个实现了接口的具体类都必须为这些成员而提供具体的实现细节。虽然被派生的类只能够从一个单独的类进行继承,但是它们能够同时实现多个接口。下列指南有助于确保你的接口是被正确设计的。 阅读全文
摘要:
静态类与那些被继承自 Object 的类不同的是:它是一种不包含实例成员的类,并且没有可调用的构造器。下列指导方针有助于确保你的静态类是正确地被设计的。 阅读全文