VB.NET’With’语句 – 拥抱还是避免?
发布时间:2020-12-17 08:13:49 所属栏目:百科 来源:网络整理
导读:在工作中,我经常在项目中工作,其中许多属性的某些对象必须在建设期间或早期在其一生中设置。为了方便和可读性,我经常使用With语句来设置这些属性。我发现 With Me.Elements .PropertyA = True .PropertyB = "Inactive" ' And so on for several more line
在工作中,我经常在项目中工作,其中许多属性的某些对象必须在建设期间或早期在其一生中设置。为了方便和可读性,我经常使用With语句来设置这些属性。我发现
With Me.Elements .PropertyA = True .PropertyB = "Inactive" ' And so on for several more lines End With 看起来好多了 Me.Elements.PropertyA = True Me.Elements.PropertyB = "Inactive" ' And so on for several more lines 对于非常长的语句,只是设置属性。 我注意到使用时有一些问题调试时;然而,我想知道是否有任何令人信服的理由,以避免在实践中使用?我一直认为通过编译器生成的代码上面两种情况基本上是一样的,这就是为什么我一直选择写我感觉更可读。
如果您有长的可变名称,最终会出现:
UserHandler.GetUser.First.User.FirstName="Stefan" UserHandler.GetUser.First.User.LastName="Karlsson" UserHandler.GetUser.First.User.Age="39" UserHandler.GetUser.First.User.Sex="Male" UserHandler.GetUser.First.User.Occupation="Programmer" UserHandler.GetUser.First.User.UserID="0" ....and so on 然后我将使用WITH,使其更加可读: With UserHandler.GetUser.First.User .FirstName="Stefan" .LastName="Karlsson" .Age="39" .Sex="Male" .Occupation="Programmer" .UserID="0" end with 在后面的示例中,与第一个示例相比甚至有性能优势,因为在第一个示例中,Im每次访问用户属性时都提取用户,而在WITH的情况下,我只提取用户一次。 我可以获得性能增益,而不使用,像这样: dim myuser as user =UserHandler.GetUser.First.User myuser.FirstName="Stefan" myuser.LastName="Karlsson" myuser.Age="39" myuser.Sex="Male" myuser.Occupation="Programmer" myuser.UserID="0" 但我会去WITH语句,而不是,它看起来更干净。 我只是把它作为一个例子,所以不要抱怨一个类有很多关键字,另一个例子可能是像这样:WITH RefundDialog.RefundDatagridView.SelectedRows(0) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |