结构体无法初始化值,你可以用类实现,或者写一个构造函数,把值传进去。
我们提供的服务有:成都做网站、成都网站制作、微信公众号开发、网站优化、网站认证、辽阳县ssl等。为1000+企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的辽阳县网站制作公司
Public Structure wheelmodel
Public ID As Short
Public swapway() As Short
Public start As Short
Public Sub New(ByVal Size As UShort) 'Size就是传入的数组的大小
swapway = New Short(Size) {}
End Sub
End Structure
调用的时候:
Dim x As wheelmodel = New wheelmodel(10)
一个结构,可以理解为结构是将几个变量打包在一起.例如常用到的Point,Size,Location,等等,就是属于一个结构.例如Size的结构原型如下:Structure Size
Dim Width As Integer
Dim Hieght As Integer
End Structure举个例子,一个游戏人物的血,蓝,经验值,打包成一个结构,名称叫"状态",例子如下: Structure 状态
Dim 血 As Integer
Dim 蓝 As Integer
Dim 经验值 As Integer
End Structure就可以这样使用:dim Zt as 状态Zt.血=100Zt.蓝=100Zt.经验值=500到访问属性值的时候:XXX=Zt.血Zt.经验值+=100
1、先定义一个结构体
2、初始化并定义一个结构体的变量
3、使用该变量即可
VB.NET ,结构体要写在所有函数的外部
Public Class Form1
Structure Hate
Dim str As String
Dim i As Integer
End Structure
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim a As Hate
a.str = "string"
a.i = 1
MsgBox(a.str a.i)
End Sub
End Class
一个简单的例子:
Dim a(3) As Integer = { 0, 1, 2 }**修改**既然有界数组不能初始化,就还缺(省)界数组试试嘛:
Dim a() As Integer = { 0, 1, 2 }
类型不匹配的错误估计是你的结构体缺少构造函数造成的。在你的quality_i结构体定义里面加一个构造函数,如下所示
Public Structure quality_i
Public nub As Integer
Public nae As String
Public Sub New(ub As Integer, ae As String)nub = ubnae = aeEnd SubEnd Structure然后以如下方式初始化: