十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1、先定义一个结构体
创新互联建站科技有限公司专业互联网基础服务商,为您提供成都二枢服务器租用托管,高防主机,成都IDC机房托管,成都主机托管等互联网服务。
2、初始化并定义一个结构体的变量
3、使用该变量即可
结构体无法初始化值,你可以用类实现,或者写一个构造函数,把值传进去。
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)
因为数组是引用类型,所以直接赋值会出现这种情况
可以在kb=k后单独复制数组
kb.rr=k.rr.Clone
这样两个数组就是独立的了
之所以先kb=k是为了当其含有多个成员时值型成员可以直接复制,只需Clone引用类型的就行了
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然后以如下方式初始化: