基本
Cdragon2005
这个作者很懒,什么都没留下…
展开
-
effective hierarchy(二)之 函数合辑(2)
介绍:本节我们来看看另外一种封装,构建件。构建件作为类的入口,用于描述类在初始化时的状态,本质上是一种具有系统约定的函数。 1.构建件,类进行实化(实例化)对象和定义数据类型值时(new(msil:newobj命令))调用的特殊方法。即,用构建件来初始化(一个类)。 (1)语法为: <class> <object> = new...2009-09-16 21:29:18 · 126 阅读 · 0 评论 -
effective hierarchy(二)之 函数合辑(1)
“暴露”阶段:值->行为(函数)->行为(函数)的参数;打个比方,这就好象“穿得越多,而暴露得就越少”。语言亦是如此。 属性之所以在体系中具有重要意义,是因为它可以承担类与类关联的消息人角色。 我们知道,低耦合的重要手段之一便是封装,那么在C#的语言概念到达更高的层次之前,对于C#两大类型之一的值类型,必须进行处理,而其中首当其冲的便是变量。对变量进行封装的重要手段,便是属性--属...2009-08-19 14:53:16 · 126 阅读 · 0 评论 -
effective hierarchy(一)之 基本概念(8)
MSDN,C#2 一、语句1.结束点和可达性(end points and reachability) (1)每个语句都有结束点。按照直觉(in intuitive terms),结束点是紧跟在语句后面的那个位置。复合语句(composite statements ,也叫合成语句,即包含嵌入语句的语句)的执行规则规定了(执行)控制到达一个嵌入语句的结束点时所采取的措施(act...2009-07-02 23:39:12 · 131 阅读 · 0 评论 -
effective hierarchy(一)之 基本概念结束篇
一、函数/功能成员(function member) (1)概念 函数成员是包含可执行语句的那些成员;函数成员始终是类型的成员,而不能是名字空间的成员。 C#的函数成员包括的类别(category):方法、属性、事件、索引器、用户定义的操作符、实例构建器、静态构建器、析构器。 ~除了不能显式调用静态构建器和析构器,其它都可通过函数成员调...2009-06-30 15:41:49 · 144 阅读 · 0 评论 -
effective hierarchy(一)之 基本概念(7)
以下可跳过:[立记保留:到现在为止,我满意的是认真的精神。--不放弃!(有双语的注释。)加强效率,抓重点。来看看非常好的一章内容,go--] [MSDN,C#2]表达式,操作符和操作数的序列(sequence)。这一篇将介绍语法、操作数和操作符的测算顺序(order),以及表达式的意义。 一、表达式归类 1.表达式归为下列类别之一: (1)值,所有值...2009-06-23 21:15:10 · 257 阅读 · 0 评论 -
effective hierarchy(一)之 基本概念(6)
MSDN,C#2.0 转换(conversions) 转换使一种类型的表达式被视为另外一种类型(的表达式)。转换可以是隐型(自动)、也可以是显型(强制),并因此决定了是否需要显式切换(cast)。如,从int到long的转换是隐式自动的,所以int类型的表达式可以被看作long。反之,从类型long到类型int是显式的,所以要求显式切换。 一、隐式转换(七种)...2009-06-21 00:34:40 · 155 阅读 · 0 评论 -
effective hierarchy(一)之 基本概念(5)
MSDN,C#2.0 变量基本点: 变量代表存储位置(storage location); 每个变量都有个决定在变量中可以存储什么值的类型; C#是类型安全(type-safe)的高级语言; C# 编译器保证存储在变量中的值总是具有合适的类型; 变量的值可由赋值或++、--操作符更改; 在取值(obtain value)之前,变量必须被明确...2009-06-18 22:16:28 · 143 阅读 · 0 评论 -
effective hierarchy(一)之 基本概念(4)
MSDN,C#2.0: 一、名字空间和类型名称(namespace and type names) 1.在C#程序中,有几个(serveral)语境上下文(context)是要求必须指定“名字空间或类型的名称”(namespace-or-type-name以下简为ntn)的。它们都写成以“.”记号分隔的一个或多个标识符(identifier)。语法格式为: namesp...2009-06-15 15:59:06 · 227 阅读 · 0 评论 -
关于“匿名方法”与“lambda操作符”的实现
在<关于“回调”的实现>一文中,我们探讨了使用委托实现回调。但对于回调的原型来讲,我们感到其使用上的繁琐,本文我们使用“匿名”方法来对其简化。 我们首先回顾一下,实现回调的主要步骤:1、定义委托2、定义调用者3、定义执行体函数 我们来看下,通过匿名方法--对回调一文中的完整示例进行语法简化后的--程序如下:using System;using Sys...2010-03-24 22:29:18 · 141 阅读 · 0 评论 -
effective hierarchy(一)之 基本概念(3)
MSDN,C#2.0: 一、签名与重载(signatures and overloading) 1.签名用于描述方法、实例构造函数、索引器和操作符的特征(characterized)。【作为特征描述的签名中的每个形参都是有顺序的,基本是从左到右】 (1)方法签名: 包含方法名称及每个(each of)形参的类型(type)和种类(kind-v...2009-06-14 15:00:31 · 143 阅读 · 0 评论 -
effective hierarchy(一)之 基本概念(2)
MSDN:基本概念 一、启动应用 1.具有入口点(entry point)的程序(assembly)称为应用(application) ,当一个应用运行时,便创建新的应用域(domain)。域作为应用状态(application state)的容器起到隔离应用(application isolation)的作用。应用域作为应用和它使用的类库(class libraries)中所定...2009-06-13 18:22:36 · 174 阅读 · 0 评论 -
effective hierarchy(一) 之基本概念(1)
我告诫自己,不要忽略简单的东西,又要扎实。所以这一篇开始,专门来研究下C#基本概念。 MSDN: 词法结构(lexical structure) 程序(program)C#程序包含了一个或多个源文件,叫做编译单元。源文件是由有序的统一字符(Unicode)序列组成。源文件与文件系统中的文件一一对应,但这种对应不是必须的。如果考虑便携(portability)最大化,建议使用UT...2009-06-11 09:37:45 · 167 阅读 · 0 评论 -
effective hierarchy(一)之 属性与索引器
编程笺言:“优良的设计不仅对使用过程隐去细节,也不允许数据成员被直接地访问。” 这一节,我们就看看索引器是如何将数组虚拟化了的...... 一、属性1.基本(1)属性是字段意义上的扩充,使通过相同的语法访问;但属性不是变量,不是设计用来作为存储定位(storage location)使用,不可能把属性作为ref或out方式的参数传递;(2)属性的语法为 [att...2009-06-07 14:07:34 · 125 阅读 · 0 评论 -
effective hierarchy(一)之 从array说起(4)
回顾:上一节中,我们看到了数组列表、队列与栈,从边界上突破了数组的局限。下面继续来看实用的哈希表。 MSDN:c#2.0 HashTable:1.基础(1)表示一系列(collection)的键-值(key-value)对,由键的哈希代码(hash code)来组织。它的语法为 [SerializableAttribute] [ComVisi...2009-06-07 00:53:39 · 114 阅读 · 0 评论 -
effective hierarchy(一)之 从array说起(3)
回顾:从上一节中,可以看出枚举的易用性对数组使用的启示意义。 一、ArrayList1.基础(1)使用边界动态按需增长的数组实现IList接口,语法为 [SerializableAttribute] [ComVisibleAttribute(true)] public class ArrayList : IList, ICollec...2009-06-06 21:20:22 · 132 阅读 · 0 评论 -
effective hierarchy(一)之 从array说起(2)
复习:从上一节,可以看到2.0的数组有两个直接突破:a.从“原型数组”向引用类型的突破;b.嵌套数组元素间维度和容量可变. 数组暂时告一段落,进入与数组相关的下一个话题。 MSDN,C#2.0:一、枚举关键字1、基础(1)枚举是指一个唯一的类型,它包含了一套名字常量,后者被称为枚举器列表(enumerator list);(2)枚举使用关键字enum声明,语法为...2009-06-06 09:34:02 · 142 阅读 · 0 评论 -
effective hierarchy(一)之 从array说起(1)
MSDN(c#2.0): 数组的元义是相同类型(type)的一组"变量"。它是类型声明的,如type[] arrayName;数组类型用成对的'[' ']'表示,默认情况下,[]内可不填写硬代码(hardcode),c#会根据情况自动分配;数组元素用成对的'{' '}'表示;{}标界数组单元;在c#中,数组提升为对象层次,不再仅仅是c和c++中连续可及(addressable)的内存区...2009-05-29 13:59:16 · 156 阅读 · 0 评论 -
effective hierarchy(一)之 C#中的new
[b]MSDN(c#2.0):[/b]在msdn中,指出new的三种用法。即,作为操作符(operator)、修改符(modifier)、约束(constraint)使用。[b]一、new操作符用于创建[/b](1)在堆迭(heap,可以想象为一面墙倒塌后砖头间的堆叠状;而stack则是线性描述)上,使用newobj命令创建对象并显式调用构建(constructor)。 ...2009-05-27 23:21:39 · 107 阅读 · 0 评论 -
ZT,一篇好文
读读语言大牛们(其中有位是Anders)这篇文章,会很受益。(实事求是,我看到一半时,能理解了什么是变量和副作用)2010-05-03 10:33:13 · 142 阅读 · 0 评论