zoukankan      html  css  js  c++  java
  • 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 固定块大小。

     

  • 相关阅读:
    luogu P2472 [SCOI2007]蜥蜴 网络流 拆点
    luogu P2762 太空飞行计划问题 网络流24
    luogu P2774 方格取数问题 网络流24 最小割
    luogu P2766 最长不下降子序列问题 网络流24
    Codeforces Round #651 (Div. 2) E
    Codeforces Round #651 (Div. 2) D
    Codeforces Round #651 (Div. 2) C
    Codeforces Global Round 8 E
    Codeforces Global Round 8 D
    【最小生成树】Truck History POJ
  • 原文地址:https://www.cnblogs.com/cuiyansong/p/3108233.html
Copyright © 2011-2022 走看看