我在下面写了这段代码,期待它每次运行它都会返回相同的结果,但事实并非如此。有人可能会向我解释为什么每次运行它时,具体种子的随机数生成器会生成一个不同的数字,因为我编写了与命令行应用程序相同的程序,它工作得很好。为什么不是随机数字序列相同?
这里是我的VB.NET代码(断码):
'Bunch of WinForms Code
Private Sub PictureBox1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles PictureBox1.Click
Randomize(3)
MsgBox(Rnd.ToString)
End Sub
这是我的工作VB.NET命令行应用程序:
Imports System.Console
Public Module rnum
Sub Main()
Randomize(3)
WriteLine(Rnd.ToString) 'Returns 0.1387751
End Sub
End Module
从[MSDN](https://msdn.microsoft.com/en-us/library/8zedbtdt(v = vs.90).aspx):'要重复随机数序列,在使用Randomize和数字参数之前立即调用带有负面参数的Rnd。使用随机数与数值相同的值不会重复上一个序列。' – Plutonix
那么为什么它在命令行应用程序中工作? –
@Plutonix仍然不能回答我为什么在命令行应用程序中工作的问题 –