CSharpThinkingC#2 革新(附加一)

    本章主要回顾C#2相对C#1,所做的微小而又伟大的改变,既考虑到了良好的组织架构,又能良好的向后兼容。

其中也涉及到了,修复了C#1时期的细小的Bug.

  一,分部类型

     可以在多个源文件中为一个类型编写代码。特别适用于部分代码是自动生成的,而其他部分的代码为手动生成。 分部类型一般用于重构过大的类型,当然Visual Studio在设计器中也是用这种方式实现的代码融合。

     关键字partial 。C#3中的分部方法中对任何未实现的分部方法在IL中均被移除。

   二,静态类

    C#1中对静态类一般要添加一个私有构造方法,防止对静态类进行实例化,因为C#1默认会添加一个默认构造器。而C#2则更智能的知道不用添加构造器。

   三,属性访问器

    可以对属性设置访问控制关键字。

1 public string Name
2 {
3     get;
4     private set;
5 }

   四,命名空间别名

    4.1 限定的命名空间别名:

1 using WinForm = System.Windows.Forms

    4.2 全局命名空间别名

1 Console.WriteLine(typeof(global::Chapter7.Test));

    4.3 外部别名

1 extern alias FirstAlias;
2 ...
3 Console.WrtieLine(typeof(FirstAlias.Example));

    五,Pragma指令

    由一系列以 #pragma 开头的代码所表示的预处理指令。#define #region #Debug #Release 等。

     六,固定大小的缓冲区

    在Unsafe代码块中 调用 fixed 固定块大小。

 

原文地址:https://www.cnblogs.com/cuiyansong/p/3108233.html