我对这个概念很陌生。
我在某些代码中看到了一些函数:
Public Function GetDataObjects(Of Customer)(ByVal dataset as DataSet)
...
End Function
(Of Customer)在这个例子中究竟做了什么或意味着什么?
答案 0 :(得分:2)
定义看起来不像:
Public Function GetDataObjects(Of T)(ByVal dataset as DataSet) as IList<T>
...
End Function
然后你就像
一样使用它IList(Of Customer) customers = GetDataObjects(Of Customer)(someDataSet)
如果是这样,Customer提供了一个真实的类型来代替在GetDataObjects函数中使用T的操作
答案 1 :(得分:1)
这意味着此方法是通用的。它有一个名为Customer
的通用参数,没有约束。
您能为GetDataObjects方法提供更多代码,以便我们可以添加更好的解释吗?
答案 2 :(得分:0)
如果没有看到返回值的函数部分,它似乎意味着该函数的返回类型是Customer。
您所看到的是VB.NET处理泛型的方法之一。
约翰
(我可能错了。自从我做VB.NET工作以来已经有一段时间了。)
修改强>
这是不是的返回类型。 (很抱歉有这种混淆。)它只是向函数提供了“客户”应被视为特定类型的信息。客户成为定义类型的“参数”。它可以是Integer,String,Object,Decimal或任何其他类型。 (这是所有基本的泛型。)
据推测,该函数以某种方式使用此类型,但签名未显示使用。 (一种猜测是,临时标记为“客户”的类型用于确定数据集中应包含哪些列或如何使用这些列。)