我覺得問這個問題真的很愚蠢,但是這里......
我正在嘗試在 VB 中創建一個自定義物件,它本身就是一個自定義物件的串列(或集合,或“元組”-我不確定它們之間的區別是什么),我需要創建例程來添加并從較大的自定義物件中洗掉這些輔助物件。到目前為止,我的代碼是這樣的:
Public Class parameterSet
Friend _xParameter As String
Public Property xParameter() As String
Get
Return _xParameter
End Get
Set(value As String)
_xParameter = value
End Set
End Property
Friend _yParameter As String
Public Property yParameter() As String
Get
Return _yParameter
End Get
Set(value As String)
_yParameter = value
End Set
End Property
Friend _zParameter As String
Public Property zParameter() As String
Get
Return _zParameter
End Get
Set(value As String)
_zParameter = value
End Set
End Property
Public Sub New(ByVal xParameter As String, ByVal yParameter As String, ByVal zParameter As String)
_xParameter = xParameter
_yParameter = yParameter
_zParameter = zParameter
End Sub
End Class
Public Class parameterCollection
Friend _parameterCollection As New List(Of parameterSet)
Friend Sub Add(xParameter As String, yParameter As String, zParameter As String)
Throw New NotImplementedException()
End Sub
End Class
我必須在 Add 例程中添加什么才能使其正常作業?
uj5u.com熱心網友回復:
你的第一堂課應該是這樣的:
Public Class ParameterSet
Public Property X As String
Public Property Y As String
Public Property Z As String
Public Sub New(x As String, y As String, z As String)
Me.X = x
Me.Y = y
Me.Z = z
End Sub
End Class
你的第二堂課應該是這樣的:
Imports System.Collections.ObjectModel
Public Class ParameterSetCollection
Inherits Collection(Of ParameterSet)
Public Overloads Sub Add(x As String, y As String, z As String)
Add(New ParameterSet(x, y, z))
End Sub
End Class
你甚至可能想要這樣做:
Imports System.Collections.ObjectModel
Public Class ParameterSetCollection
Inherits Collection(Of ParameterSet)
Public Overloads Function Add(x As String, y As String, z As String) As ParameterSet
Dim item = New ParameterSet(x, y, z)
Add(item)
Return item
End Function
End Class
該類Collection(Of T)已經提供了所有標準集合功能,您可以根據需要對其進行擴展。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/442647.html
