以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [建议]帮助中定义集合应该统一加上New!  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=32445)

--  作者:don
--  发布时间:2013/5/2 14:20:00
--  [建议]帮助中定义集合应该统一加上New!
一般定义集合 :
Dim Names As New List(Of String) \'此处如省略 New ,则后面会报错
Names.Add"电视机")
...

有时也可不加NEW的,如:
Dim Names As List(Of String) = DataTables("订单").GetUniqueValues("数量 > 0","产品ID")
Dim drs As List(Of DataRow
drs = DataTables("订单").Select("数量 > 0")

结论:一般来说,加上 New 应该总没错,因此,老大在帮助文件中应该统一加上  New 为好,以免造成疑惑!

[此贴子已经被作者于2013-5-2 14:23:52编辑过]

--  作者:Bin
--  发布时间:2013/5/2 14:21:00
--  
这个确实是. 顶一下.
--  作者:关键下一秒
--  发布时间:2013/5/2 14:33:00
--  
以下是引用don在2013-5-2 14:20:00的发言:
一般定义集合 :
Dim Names As New List(Of String) \'此处如省略 New ,则后面会报错
Names.Add"电视机")
...

有时也可不加NEW的,如:
Dim Names As List(Of String) = DataTables("订单").GetUniqueValues("数量 > 0","产品ID")
Dim drs As List(Of DataRow
drs = DataTables("订单").Select("数量 > 0")

结论:一般来说,加上 New 应该总没错,因此,老大在帮助文件中应该统一加上  New 为好,以免造成疑惑!

[此贴子已经被作者于2013-5-2 14:23:52编辑过]

加new系统就会自动开劈一份内存资源。或许这样会比较浪费吧!


--  作者:don
--  发布时间:2013/5/2 14:37:00
--  
以下是引用关键下一秒在2013-5-2 14:33:00的发言:

哦,那老大应该在帮助中说明一下:我现在有意无意都加上New,以防出错呢
另请教一下,前面两句为何一定要加New呢?

[此贴子已经被作者于2013-5-2 14:40:22编辑过]

--  作者:关键下一秒
--  发布时间:2013/5/2 14:50:00
--  
以下是引用don在2013-5-2 14:37:00的发言:
哦,那老大应该在帮助中说明一下:我现在有意无意都加上New,以防出错呢

[此贴子已经被作者于2013-5-2 14:40:22编辑过]

我认为加不加NEW主要取决于对象是否在使用其方法之前是否被实例化。加new后一定是被实例化了。不加new,但后面没有使用到对象的方法也不会出错。或者,在使用对象的方法之前已经赋值(个人认为这个赋值过程就是实例化的过程),这样也不会出错。用nothing赋值是个例外。


--  作者:don
--  发布时间:2013/5/2 14:55:00
--  
以下是引用关键下一秒在2013-5-2 14:50:00的发言:

多谢指教!


--  作者:don
--  发布时间:2013/5/2 14:58:00
--  
在网上搜索到:数组组合及分拆的方法,好似在FB中不通.


图片点击可在新窗口打开查看此主题相关图片如下:sz.png
图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2013/5/2 15:00:00
--  
这一看就知道不是VB的语法.当然在狐表中行不通.
--  作者:don
--  发布时间:2013/5/2 15:03:00
--  
以下是引用Bin在2013-5-2 15:00:00的发言:
这一看就知道不是VB的语法.当然在狐表中行不通.
呵呵,我当然不会硬套.俺试了那个ConCat方法,结果不行.


--  作者:hanxuntx
--  发布时间:2013/5/2 15:05:00
--  

new 是.net的方法 创建一个新对象

然后赋值给他就实例化了

比如数组 dim a() AS STRING

          a = New string{...}

不知道我说的对不对