c#语言特性

来源:互联网 发布:手机怎样在淘宝买东西 编辑:程序博客网 时间:2024/06/12 01:47

备忘一下,C#语言特性方面比较独特的地方。


1. 变量推断:编译器可以根据变量的初始值推断变量类型并使用。

var name = “bugs”;


2. 字段和局部变量的作用域冲突:类的成员变量或者静态变量都看作是字段,函数里的变量堪称局部变量,两者重名不冲突。

class ScopeTest{     static int j = 20;     public static void Main()     {           int j = 30;     }}


3. const变量总是静态的,不用加static声明。


4. 变量传递方式就两种类型:值传递(内建的13种类型,自定义结构),引用传递(string, object, 以及自己定义的class)


5. foreach循环迭代不允许改变迭代变量的值,编译会报错。


6. #warning,#error 输出编译分支不正确的提示

#region,#endregion 标记代码块

#pragma 抑制或者还原编辑警告

#pragma warning disable 169public class Test{}#pragma warning restore 169


7. 属性,属性可自动实现

public class Test{      private int intValue;      public int IntValue      {             set             {                   intValue = value;             }             get             {                   return intValue;             }      }}


8. ref: 表示传入参数,传入前必须初始化,并且带回修改的值

out: 表示传出参数,传出前必须修改


9. 只读字段、匿名类型


10. partial 部分类,可以把类的定义实现拆分在多个文件中,防止文件过大


11. 添加static在类名前,静态类,无法创建实例


12. 扩展方法



0 0
原创粉丝点击