1.readonly关键字可使变量在运行时不能被修改。static readonlyconst的区别在于readonly是在运行时不能被改变,而const是在编译时进行替换。但在实际运用中,两者的作用效果是一样的。此外,readonly只能作用于域,而不能用于方法内的局部变量。

 

2.C++中可以在方法中使用static声明静态变量,将这个变量的状态记录下来,但在C#中却不能这样做。

 

3.C#中使用‘ref’关键字声明引用变量。在定义方法和调用方法时都需要加上ref关键字。在调用方法时,该方法的栈中存储的是一个指向原变量的引用。除了‘ref’之外还有‘out’关键字也可以声明引用变量,它们编译成的中间文件是相同的。不同的是,使用‘ref’时,变量必须已经被初始化,而‘out’则不需要。

 

4.当传给一个方法的参数是引用类型,如数组或者类的实例,将会把这个引用复制到方法调用时分配给该方法的栈中,所操作的数据其实是同一份。

 

5.在数组类型参数的前面加上‘params’关键字,在调用时可以直接传入该与数组相同类型的多个参数,调用时会自动将这些参数组成一个数组。方法中只可能有一个参数带有‘params’关键字,而且必须是最后一个,否则将会造成混淆。

 

6.如果需要手动编写处理异常方法并忽略CLR自身的异常处理方法的话,便将有可能出现异常的语句放在try语句块中,后面带‘catch’关键字对异常进行处理。

 

7.在处理异常时最后一个catch块最好是针对一般异常的,即类似于switch中的default一样。

 

8.catch最后还可以再加一个‘finally’关键字,无论程序是否出现了异常,finally块中的代码都将在最后被执行。当trycatch块中含有return语句来终止所在函数的运行时,finally块内的语句仍会执行。通常来说,finally中的语句是用来处理结束后的一些操作,比如文件的关闭。

 

9.可以使用‘throw’关键字抛出错误,被抛出的数据类型必须是Exception类或者是继承Exception类的。

posted on 2013-02-03 19:37  RedHood  阅读(236)  评论(0编辑  收藏  举报