Dim wheel2(10) As wheelmodel2
逊克ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:028-86922220(备注:SSL证书合作)期待与您的合作!
不要用 New
结构体是值类型的,当你定义完数组之后,里面的元素(结构体的实例)就已经使用默认的构造函数初始化了
你没有将数组定义为一个新的实例:
dim
j
as
Integer
dim
a(100)
as
new
Phvalue
for
j=0
to
501
...................
1、先定义一个结构体
2、初始化并定义一个结构体的变量
3、使用该变量即可
你搞错了一点:Unicode字符规定,每个字符占用两个字节,包括英文和数字,所以你只需将:
MarshalAs(UnmanagedType.ByValTStr, sizeconst:=3) Public s As String
改成:
MarshalAs(UnmanagedType.ByValTStr, sizeconst:=6) Public s As String
即可!
结构体无法初始化值,你可以用类实现,或者写一个构造函数,把值传进去。
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)
struct T_ChildStruct
{
int nChildData;
string strChildData;
T_ChildStruct()
{
nChildData = 0;
strChildData = ""; // string可以不用写初始化,本身构造中就有
}
};
struct T_FatherStruct
{
int nFatherData;
string strFatherData;
T_ChildStruct arrChild[10];
T_FatherStruct()
{
nFatherData = 0;
strFatherData = "";
}
};