C#与VB.Net之间的转换

C#和VB.Net同为.Net框架下的语言,因此可以进行转换。这篇文章说明一些转换规则。

最大的区别:

  1. C#以英文分号作为语句结尾,而VB.Net用回车符(CrLf)作为语句结尾。C#只要不写分号,可以使用多行语句,而VB.Net必须在要连接的一行末尾加上下划线。
  2. C#区分大小写,VB.Net不区分大小写。
  3. C#以“//”表示单行注释,以“/*”和“*/”表示跨行注释的开始和结尾,VB.Net只有单行注释,为一个单撇号“

访问修饰符

1

 

 

  1. C#以“{}”表示类开始与结束,VB.Net以“Class”开始,以“End Class”结束。
  2. C#在类名后添加”: [Class]“表示继承,而VB.Net使用”Inherits [Class]“表示继承。
  3. C#在类名后添加”: [Implements]“表示接口实现,而VB.Net使用”Implements [Implements]“表示接口实现。
  4. 等价的类修饰符见下表:

2

 

结构

C#以”{}“表示结构开始与结束,VB.Net以“Structure”开始,以“End Structure”结束。

接口

  1. C#以”{}“表示结构开始与结束,VB.Net以“Interface”开始,以“End Interface”结束。
  2. C#使用伴随接口的冒号来指定实现接口,VB.Net中使用“Implements”语句。

类、结构与接口成员

C#以”static“表示静态或共享成员,对应的VB.Net关键字是“shared”。

字段

C#以“readonly”表示只读,对应VB.Net是“ReadOnly

方法与函数

  1. C#中不返回值的方法以“void”关键字标出在函数名左边,VB.Net则称不返回值的函数为“Sub”(子程序)。
  2. C#中返回值的函数把返回值类型标示在函数名钱,VB.Net称返回值的函数为”Function“(方法),并在函数后标明“As [返回值类型]”

不返回值的函数:

VB.Net:

C#:

返回值的函数:

VB.Net:

C#:

VB.Net中可以声明参数是按值传递还是按引用/指针传递:(index为按值传递,listbox为按地址/引用传递)。C#可以使用“ref”,“out”关键字表示按引用/地址传递。不同之处在于使用“ref”传递的形参必须提前初始化。

数据类型

具体见下表:

3

对于变量的声明,C#使用“[数据类型] [变量名]”语法,而VB.Net使用“Dim [变量名] As [数据类型]”,如:

VB.Net:

C#:

函数修饰符

4

属性

  • C#的属性定义为“[访问修饰符] [数据类型] [属性名] {}”,大括号内有“get”语句说明此属性可读,有“set”语句说明该属性可写。
  • VB.Net中的属性定义为“[访问修饰符] [只读写属性] [属性名] As [数据类型]”,只读写属性可以为:“ReadOnly”(只读)、“WriteOnly”(只写)

枚举

C#和VB.Net中的枚举定义方式一样,为:“[访问修饰符] Enum [枚举名]”(C#中Enum的E要小写),不同的是C#枚举中每个成员结尾有一个逗号:

VB.Net:

C#:

 

觉得不错?分享给你的小伙伴:

发表评论