用google搜索一下“c# support default parameter”,就会发现一些大牛的文章解释为什么C#不支持默认参数。
我个人的理解是:理由是有的,但是很牵强。他们的逻辑就像:电会电死人,所以我们要禁止用电。
没有了默认参数,真正写代码的时候很不方便,不得不一遍又一遍做copy/paste的重复工作。尤其是和COM组件打交道的时候,没有默认参数简直是噩梦。而VB.NET语言支持默认参数,书写代码非常方便。
考虑到前面写的一些C#疑惑,最近已经开始考虑移民为VB.NET用户了。
后记:
好消息,新的C# 4.0开始支持default parameter了!让那些牵强附会的文章见鬼去吧。
本文探讨了早期C#不支持默认参数的原因,并表达了这种缺失带来的不便。随着C# 4.0的发布,终于引入了对默认参数的支持,这将极大提升编程效率,特别是与COM组件交互时。

218

被折叠的 条评论
为什么被折叠?



