VB.NET 2010、.NET 4
大家好,
我绝不是一个好的程序员,我只是想把我的脑袋绕在这些东西上,所以如果这是一个愚蠢的问题,请原谅我。
我希望以下内容生成一个显示“2”而不是“5”的消息框:
Public Class SomeClass
Private SomeInt As Integer = 5
Private SomeListOfInts As New List(Of Integer)
Public Sub New()
SomeListOfInts.Add(SomeInt)
SomeListOfInts(0) = 2
MsgBox(SomeInt.ToString)
End Sub
End Class
这行不通。消息框显示“5”。我想我在某种程度上理解了为什么。由于 SomeInt 是一个值类型,将它添加到 SomeListOfInts 只是添加一个副本。如果这不连贯,我很抱歉。有没有什么直接的方法可以做到这一点?
在此先感谢,布赖恩
编辑:我只是想补充一下,我怀疑人们会说“为什么要这样做?”/“这不是一件好事。” 等等。我对此很好,并且想知道一种更好的方法(如果有的话),但是,我通常也很好奇如何完成这样的事情,无论它是否是好的做法。另外,如果这不是好的做法(无论这意味着什么),为什么?