当前位置:  开发笔记 > 编程语言 > 正文

为什么with()构造不包含在C#中,当它在VB.NET中真的很酷时?

如何解决《为什么with()构造不包含在C#中,当它在VB.NET中真的很酷时?》经验,为你挑选了1个好方法。

我是C#开发人员.我非常喜欢花括号,因为我来自C,C++和Java背景.但是,我也喜欢.NET系列的其他编程语言,比如VB.NET.如果你在.NET中编程了一段时间,那么在C#和VB.NET之间来回切换并不是什么大不了的事.这是我工作的公司非常常见的方法.作为C#的人,我非常喜欢withVB.NET编译器提供的XML文字和关键字.我希望微软也将这些功能包含在C#中.

我只是很好奇,其他开发者对它有什么看法!



1> Jon Skeet..:

我个人在构造之后使用它时不喜欢WITH - 如果你需要在初始化之后用一个对象做几件事,通常这个行为应该封装在类型本身中.如果你真的想做像WITH这样的事情,那么只需要声明一个简短的变量并选择引入一个新的范围.

然而,它能够与几个属性紧凑初始化对象有用的-这也正是为什么C#3,您可以这样写:

MyObject x = new MyObject { Name="Fred", Age=20, Salary=15000 };

这有一些限制(C#4中的可选和命名参数将有助于克服)但它比没有导致潜在的混乱/模糊更好.

(在XML文字方面,我再次与C#团队合作 - XML是一种非常具体的技术,可以用于语言.如果他们能够提出一种通用的形式,恰好创建XML但可以用来创建其他树这也很好 - 就像查询表达式没有直接绑定到IEnumerable或IQueryable一样.)

推荐阅读
ERIK又
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有