Rog*_*son 7 c# language-design
C#主要是强类型的,但是,有一些奇怪的行为:
例如,在滚动自己的枚举器类时,您不必实现IEnumerable,您只需实现一个名为GetEnuerator()的方法,您仍然可以foreach覆盖它.
一些Linq支持也是如此,你可以通过提供一些select where方法等来编写自己的Linq提供者.
那么为什么using(x){}声明需要IDisposable ?
我确实知道为什么linq提供者可以用这种方式编写,因为没有固定的完全合同,只有一种方法模式.
为什么C#编译器(或语言规范?)的设计方式使得某些内置语言结构需要接口,而其他人不需要接口?
| 归档时间: |
|
| 查看次数: |
190 次 |
| 最近记录: |