C# Study 2
Variable method parameters.
现在可以这么定义了:
void ABC(params DEF[] p)
把可变数量的参量作为一个array传入,倒是蛮方便的。
Indexer
public object this[int idx]
{
get {...}
set {...}
}
没什么新鲜东西,充其量相当于一个C++的operator overloading。不明白作者为什么对这个feature那么兴奋。
Attribute
终于发现C#里有创意的东西了。
switch
switch 允许用string类型,很酷。No fall-through in switch, 意味着不能写这样的CODE:
switch(abc)
{
case 1:
call something;
case 2:
call somthing else;
break;
default:
break;
}
看起来还是利大于敝。需要这样写的时候太少了,而且总可以很容易的用if来做。
goto
C#竟然保留了goto,这让我不能不对C#的设计者刮目相看。的确,务实是最重要的。goto当然有存在的理由。C#里的goto增加了两个类型:
goto case constant-expression
goto default