VB.NET语法糖味道如何

开发 后端
VB.NET语法糖是什么东西?它都包含哪些内容。在本文中总结的有:局部变量类型推测;数组初始化器;对象初始化器 等等。

VB.NET是一个功能非常强大的编程语言。支持代码托管,而且其运行机制和Java相同。所以刚刚接触这一语言的开发人员们可以在***时间内掌握到一些应用技巧来满足自己程序开发中的各种需求。#t#

在VisualBasic9Beta1中,有着LINQ这样重量级的增强,也有着一些“微不足道的”语法糖。这些语法糖并不影响最终编译出的IL,但足以减轻程序员们的工作量,实现更高效,更轻松的开发。

VB.NET语法糖有哪些?

1.局部变量类型推测

2.数组初始化器

3.对象初始化器

VB.NET语法糖好吃吗?

个人认为,这些语法糖还是比较美味的。对象初始化器就很不错;局部变量类型推测也相当好用。

VB.NET语法糖怎么吃?

1.局部变量类型推测

VisualBasic9之前,只能用As语句定义一个强类型对象。而在VB9中,允许免除局部变量的类型声明,由初始化语句确定。看示例:

  1. 'Visual Basic 9 之前  
  2. Dim List As List(Of String) = New List(Of String)  
  3. 'Visual Basic 9  
  4. Dim List = New List(Of String)  

不要担心性能问题;它是编译时由编译器进行推测的,是一种强类型的特性。

同时,VB9还支持For(ForEach)的循环变量推测,无需再临时定义循环变量。

  1. Dim Sample As Integer(5)  
  2. 'Visual Basic 9 之前  
  3. For Each I As Integer In Sample   
  4. Next  
  5. 'Visual Basic 9  
  6. For Each I In Sample  
  7. Next 

2.数组初始化器

VisualBasic9引入了简化的数组定义方法(虽然没有Ninputer说得那么简单),可以帮助程序员们缩减代码工作量。很简单,看代码:

  1. 'Visual Basic 9 以前  
  2. Dim OldArr As Integer() = New Integer(){1, 2, 3}  
  3. 'Visual Basic 9  
  4. Dim NewArr As Integer() = {1, 2, 3} 

3.对象初始化器

对象初始化器是一项重要的语法增强,它对于Coding有着莫大的帮助。我们知道,在VisualBasic8及以前版本中,必须用属性逐一赋值的方式来创建一个类。而在VisualBasic9中,一切都不同了:

 

  1. 'Visual Basic 8  
  2. Dim OldArea As New Area   
  3. With OldArea  
  4. .Subject = "北京"
  5. End With  
  6. 'Visual Basic 9  
  7. Dim NewArea As New Area With {.Subject = "北京"

这种语法表达方式,扩展了“表达式”所能表达的内容,好像把With语句放进初始化语句一般。从此,许多原本需要数行代码的功能,可以集成到一句完成。

以上就是对VB.NET语法糖的相关概念做的一些总结。

责任编辑:曹凯 来源: mscto.com
相关推荐

2009-10-09 16:11:33

VB.NET语法

2009-10-23 14:06:07

VB.NET类对象

2009-10-27 09:45:03

VB.NET数组

2010-01-11 09:53:28

VB.NET语法

2009-10-28 13:24:25

VB.NET文件

2009-10-27 14:32:45

VB.NET类型级命名

2009-10-29 14:02:24

VB和VB.NET比较

2009-11-10 15:18:35

VB.NET封面

2009-10-20 14:21:55

VB.NET fnSi

2009-10-14 12:51:41

VB.NET Data

2010-01-13 17:55:37

VB.NET语法规则

2010-01-12 09:51:07

VB.NET操作dbf

2009-06-24 15:45:32

VB.NET

2011-06-17 11:05:22

VB.NET

2010-01-08 15:33:57

VB.NET文字宽度计

2009-11-03 13:48:02

VB.NET枚举

2009-10-28 10:31:23

VB.NET Impl

2009-10-21 16:00:26

VB.NET CASE

2010-01-21 17:34:48

VB.NET Bool

2009-10-09 15:59:41

VB.NET对象
点赞
收藏

51CTO技术栈公众号