2017-09-01 37 views
1

好吧,我一直在試圖爲C++創建一個垃圾代碼生成器(vb.net的新增功能,只是試圖熟悉不同的語言),並且我被卡住了在能夠我目前停留在如何在兩組文本之間添加隨機數vb.net

Private Sub Button4_Click(sender As Object, e As EventArgs) Handles 
Button4.Click 
Dim value As Integer = CInt(Int((10000 * Rnd()) + 9999999)) 
Me.RichTextBox1.Text = (
" float pJunkcode = " + value + ";" + 
" if (pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
"If(pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" If (pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" If (pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" If (pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" If (pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";" + 
" pJunkcode = " + value + ";")` 

我正的錯誤文本 的兩條線之間調用隨機數是從字符串「pJunkcode」

轉換鍵入「雙」不是有效。

回答

3

當你來自C語言時,你的代碼的問題很難注意到。在VB 中,+運算符根據涉及的表達式的類型具有不同的行爲。在這種情況下,一個是字符串,另一個是數字,所以+運算符試圖首先將String解析爲Double,最後添加2個數字。您現在看到的所有信息:+ Operator

一個表達式是數值數據類型而另一個是字符串:

如果Option Strict爲開,然後再生成一個編譯器錯誤。

如果Option Strict爲Off,則將該字符串隱式轉換爲Double並添加。

如果字符串不能轉換爲Double,則拋出InvalidCastException異常。

Private Sub Button4_Click(sender As Object, e As EventArgs) Handles 
Button4.Click 
    Dim value As Integer = CInt(Int((10000 * Rnd()) + 9999999)) 
    Me.RichTextBox1.Text = (
    " float pJunkcode = " & value & ";" & 
    " if (pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    "If(pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " If (pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " If (pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " If (pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " If (pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";" & 
    " pJunkcode = " & value & ";") 

在你的情況,你可以通過使用字符串連接運算符& Operator解決問題