Надеюсь, это достаточно просто.Мне нужно иметь возможность добавлять элементы в копию mylist.testlist без изменения глобального объекта mylist.(Похоже, это происходит с помощью приведенного ниже кода.)
Когда я работаю над x, который должен быть совершенно отдельным объектом, mylist также модифицируется.Как я могу это исправить?Я много работал со списками и никогда не видел такого поведения раньше.Я протестировал и воспроизвел проблему в .NET 3.5 и .NET 4.0 на Win 7 Pro 32bit.
TIA!
Исходный код:
Public Class Form1
Public mylist As New test
Sub Main()
Dim x As test = mylist
For i As Integer = 0 To 10
x.testlist.Add(False)
Next
MsgBox("x count: " + x.testlist.Count.ToString + vbCrLf + "mylist count: " + mylist.testlist.Count.ToString)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Main()
End Sub
End Class
Public Class test
Public testlist As New List(Of Boolean)
Public Sub New()
testlist.Add(False)
End Sub
End Class