vb.net 创建自定义类后,如何创建这种类的数组
我是这样写自定义类;PublicClassgpPublicgpaAsStringPublicClassmc'一级子类publicttasstring'二级之类,但是在程序...
我是这样写自定义类;
Public Class gp
Public gpa As String
Public Class mc '一级子类
public tt as string '二级之类,但是在程序中始终无法直接调用。即:dim mm as gp 后用mm.mc.tt语句显示错误
public mva as string '二级之类,但是在程序中始终无法直接调用。即:dim mm as gp 后用mm.mc.mva语句显示错误
end class
end class
在程序段的语句:
Public Class Form1
'---------------------------运行正常------------------------------------
Public GPS As new gp '申明GPS属于自定义类gp时调用正常
’即:GPS.gpa = "值" 运行正常
'---------------------------运行正常------------------------------------
'---------------------------运行错误------------------------------------
public GPS() AS gp '申明数组GPS属于自定义类gp时调用正常,但是使用时显示程序错误
'即:GPS(0).gpa = "值" 运行错误
‘即时窗口提示:在 System.NullReferenceException 中第一次偶然出现的“AA.exe”类型的异常
'---------------------------运行错误------------------------------------
end class
请问各位申明数组属于自定义类gp应该如何写?
要是能够告知如何在程序中直接调用二级子类就更好了。
即:dim mm as gp 后用mm.mc.tt语句不会显示错误 展开
Public Class gp
Public gpa As String
Public Class mc '一级子类
public tt as string '二级之类,但是在程序中始终无法直接调用。即:dim mm as gp 后用mm.mc.tt语句显示错误
public mva as string '二级之类,但是在程序中始终无法直接调用。即:dim mm as gp 后用mm.mc.mva语句显示错误
end class
end class
在程序段的语句:
Public Class Form1
'---------------------------运行正常------------------------------------
Public GPS As new gp '申明GPS属于自定义类gp时调用正常
’即:GPS.gpa = "值" 运行正常
'---------------------------运行正常------------------------------------
'---------------------------运行错误------------------------------------
public GPS() AS gp '申明数组GPS属于自定义类gp时调用正常,但是使用时显示程序错误
'即:GPS(0).gpa = "值" 运行错误
‘即时窗口提示:在 System.NullReferenceException 中第一次偶然出现的“AA.exe”类型的异常
'---------------------------运行错误------------------------------------
end class
请问各位申明数组属于自定义类gp应该如何写?
要是能够告知如何在程序中直接调用二级子类就更好了。
即:dim mm as gp 后用mm.mc.tt语句不会显示错误 展开
2个回答
展开全部
感谢问题者在最佳答案里追问中提供的答案,特意从中提取出来供同样有此问题的人解惑。
Dim GPS() As gp
ReDim Preserve GPS(1)
GPS(0) = New gp()
GPS(0).gpa = "值"
亲测有效,再次感谢问题者得到答案后不忘写出来。
补充:也可以这样:
Dim GPS(0) As gp
GPS(0) = New gp()
GPS(0).gpa = "值"
Dim GPS() As gp
ReDim Preserve GPS(1)
GPS(0) = New gp()
GPS(0).gpa = "值"
亲测有效,再次感谢问题者得到答案后不忘写出来。
补充:也可以这样:
Dim GPS(0) As gp
GPS(0) = New gp()
GPS(0).gpa = "值"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Public GPS As new gp
你出的问题不是很明显吗,就这句对的,其他都没用new
你出的问题不是很明显吗,就这句对的,其他都没用new
更多追问追答
追问
Public GPS() as new gp
会提示new不能用来申明数组
好像只能用:public gps() as gp
追答
Public GPS As new gp
这其实是两句
Public GPS As gp
GPS =New gp
所以,定义数组也一样,每个元素new一次
public gps() as gp
gps(0)=new gp
gps(0).gpa=""
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询