C#
文章平均质量分 78
ziguang981
这个作者很懒,什么都没留下…
展开
-
提高C#编程水平的50个要点
1.总是用属性 (Property) 来代替可访问的数据成员2.在 readonly 和 const 之间,优先使用 readonly3.在 as 和 强制类型转换之间,优先使用 as 操作符4.使用条件属性 (Conditional Attributes) 来代替条件编译语句 #if 5.总是为自定义类重载 ToString 方法6.区别值类型和引用类型7.使用不可变的值类型(Immutabl转载 2010-01-04 14:33:00 · 290 阅读 · 0 评论 -
4. 使用条件属性 (Conditional Attributes) 来代替条件编译语句 #if
使用#if/#endif 块可以在同样源码上生成不同的编译(结果),大多数debug和release两个版本。但它们决不是我们喜欢用的工具。由于#if/#endif很容易被滥用,使得编写的代码难于理解且更难于调试。程序语言设计者有责任提供更好的工具,用于生成在不同运行环境下的机器代码。C#就提供了条件属性(Conditional attribute)来识别哪些方法可以根据环境设置来判断是否应该被调转载 2010-01-04 15:18:00 · 1417 阅读 · 0 评论 -
5. 总是为自定义类重载 ToString 方法。
System.Object.ToString()恐怕是.NET中最常用的方法了。应该为我们的类的所有客户代码提供一个合理的版本,否则这些代码就只能使用我们的类的一些属性来自己定制可读的表示了。类型的字符串表示非常有用,可以在很多地方向用户显示对象的有关信息,例如在Windows Forms上、Web Forms上、控制台输出窗口中,以及调试环境中。为此,我们创建的每一个类型都应该重写Object类转载 2010-01-04 15:32:00 · 1747 阅读 · 0 评论 -
6. 区别值类型和引用类型。
一、总的区别 值类型 引用类型内存分配地点 分配在栈中转载 2010-01-04 15:49:00 · 478 阅读 · 0 评论 -
1.总是用属性 (Property) 来代替可访问的数据成员(field)
好的OO编程习惯是提供公开的访问器,让客户代码有效的操作选择的私有Attribute的同时,也可以使对象本身能很好的控制这些Attribute,保护业务逻辑的正常运作有2种实现访问器的方法:1.OO编程语言的普通手法提供get和set的方法分别用来提取和修改Attribute.编写一个最简单的类Author来实现我们的访问器 程序代码 class Author{转载 2010-01-04 14:37:00 · 530 阅读 · 0 评论 -
2.在 readonly 和 const 之间,优先使用 readonly
C#中有两种常量类型,分别为readonly(运行时常量)与const(编译时常量),本文将就这两种类型的不同特性进行比较并说明各自的适用场景。工作原理 readonly为运行时常量,程序运行时进行赋值,赋值完成后便无法更改,因此也有人称其为只读变量。 const为编译时常量,程序编译时将对常量值进行解析,并将所有常量引用替换为相应值。 下面声明两个常量: pub转载 2010-01-04 14:50:00 · 368 阅读 · 0 评论 -
3. 在 as 和 强制类型转换之间,优先使用 as 操作符。
在程序中,进行类型转换是常见的事。那么在C#中支持以前语言的类型转换方法,即用类型名进行强行转换,例如:object objTest = new NewType();NewType newValue = (NewType)objTest;但是这样转换,有个严重的问题,就是在把objTest强转换成NewType类型对象的时候,这个过程是不安全的,因此需要用try-catch语句转载 2010-01-04 15:00:00 · 526 阅读 · 0 评论