VB.net中数据类型加方括号[]是什么意思?
看到代码如下:DimbytesSentAs[Byte]()=ascii.GetBytes(request)DimbytesReceived(255)As[Byte]这里的...
看到代码如下:
Dim bytesSent As [Byte]() = ascii.GetBytes(request)
Dim bytesReceived(255) As [Byte]
这里的 [Byte]() 和 [Byte]分别是什么意思啊?
转义名称
通常,元素名不得与 Visual Basic 的任何保留关键字匹配。但是,可以定义用中括号 ([ ]) 括起来的“转义名称”。由于中括号消除了所有的多义性,因此转义名称可以与任何 Visual Basic 关键字匹配。以后在代码中引用该名称时同样使用中括号。通常,应仅在下列情况下使用转义名称:代码已经从以前版本 Visual Basic迁移,该版本不保留用作名称的关键字;或者您使用的代码是用另一种语言编写的,该语言不保留给定关键字。 展开
Dim bytesSent As [Byte]() = ascii.GetBytes(request)
Dim bytesReceived(255) As [Byte]
这里的 [Byte]() 和 [Byte]分别是什么意思啊?
转义名称
通常,元素名不得与 Visual Basic 的任何保留关键字匹配。但是,可以定义用中括号 ([ ]) 括起来的“转义名称”。由于中括号消除了所有的多义性,因此转义名称可以与任何 Visual Basic 关键字匹配。以后在代码中引用该名称时同样使用中括号。通常,应仅在下列情况下使用转义名称:代码已经从以前版本 Visual Basic迁移,该版本不保留用作名称的关键字;或者您使用的代码是用另一种语言编写的,该语言不保留给定关键字。 展开
3个回答
展开全部
加方括号就表示不是一个关键字
经常看到有的代码中Byte、 String 、Object 加上方括号,就是为防止编译器把他们误认为是关键字。在sql中也会经常看到
你理解时可以不用理会,[Byte]() 就是Byte()
dim bytesSent() as Byte 是声明一个没有给定下标的数组
dim bytesReceived(255) as Byte 是声明了一个有下标的数组
经常看到有的代码中Byte、 String 、Object 加上方括号,就是为防止编译器把他们误认为是关键字。在sql中也会经常看到
你理解时可以不用理会,[Byte]() 就是Byte()
dim bytesSent() as Byte 是声明一个没有给定下标的数组
dim bytesReceived(255) as Byte 是声明了一个有下标的数组
更多追问追答
追问
如果不是一个关键字那就应该是个自定义变量或者类了,那岂不是会错?我还是有点不理解啊。
正因为Byte是一种类型,所以才作为关键字的,现在标注它不是关键字,那么就应该作为一个普通的变量来理解。那岂不是需要定义一个 名为 Byte 的自定义变量?
追答
你没有理解关键字是什么,比如dim bytesSent() as Byte 中,dim 和 as 是关键字,bytesSent是变量名称,Byte是类名。如果你把"dim"和"as"用作类名就会出错。
比如你要新建一个类名为Dim的类,或新建一个是Dim的变量,那肯定会错
即 Public Class Dim
dim dim as byte
那肯定会出错
正确的方法是
Public Class [Dim]
dim [dim] as byte
这里的方括号就是告诉编译器, [dim]中的dim不再是关键字了
展开全部
数组的意思,[Byte]就是指内容是Byte型的数组。
Dim bytesSent As [Byte]() = ascii.GetBytes(request)指的是定义一个Byte型的数组,用于接收ascii.GetBytes(request)的返回值,这里没有定义这个数组的大小,最终结果数组的大小就是ascii.GetBytes(request)返回值数组的大小。
Dim bytesReceived(255) As [Byte]是指定义一个长度为255的Byte型数组。
Dim bytesSent As [Byte]() = ascii.GetBytes(request)指的是定义一个Byte型的数组,用于接收ascii.GetBytes(request)的返回值,这里没有定义这个数组的大小,最终结果数组的大小就是ascii.GetBytes(request)返回值数组的大小。
Dim bytesReceived(255) As [Byte]是指定义一个长度为255的Byte型数组。
追问
dim bytesSent as [Byte]() 是否等价于 dim bytesSent() as Byte ?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
[Byte]()和[Byte]都是表示一个8位无符号整数。
追问
不太明白啊。加方括号的意思就是代表一个整数?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询