以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于定义变量里的new  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145679)

--  作者:sky-18
--  发布时间:2020/2/4 16:37:00
--  关于定义变量里的new
一直有个基础问题没有解决。因为好像在用的时候一直没有对我造成影响,所以没有管他。今天想向老师请教清楚
就是在定义某些变量的时候会有 new 。但是好像没有new也可以。比如 dim x as new list(of string) 和 dim x as list(of string)
那么,这个有new和没有new有什么区别呢?

--  作者:有点蓝
--  发布时间:2020/2/4 16:46:00
--  
一般直接赋值的不需要new,如:dim x as list(of string) = datatables.getvalues("第一列")

在没有赋值的情况下,如果需要调用变量的属性和方法,就需要new

dim x as new list(of string)
x.add("a")

--  作者:sky-18
--  发布时间:2020/2/4 16:47:00
--  
还有比如说 Dim drs As List(Of DataRow) 没有 new ,貌似代码也能运行


--  作者:sky-18
--  发布时间:2020/2/4 16:47:00
--  
谢谢
--  作者:有点蓝
--  发布时间:2020/2/4 17:15:00
--  
单独一句代码,如果没有用到其属性,当然没有问题。比如这种就错了

Dim drs As List(Of DataRow)
drs.add(dr)

这样延后赋值就没有问题
Dim drs As List(Of DataRow)
drs = datatables("A").select()