VB.NET參數類型不符相關解決方法
VB.NET這一編程語言雖然使用靈活,但是在實際編程中通常都會遇到一些問題,值得我們在實踐中積累經驗去解決。在這里介紹的解決方法是針對VB.NET參數類型不符的一些問題,希望對大家有所幫助。#t#
在VB中執行過程或函數時,會提示"ByRef參數類型不符" 。
分析VB.NET參數類型不符這一問題主要由于對應參數的類型不符造成的。造成這種情況一般有幾種情況:
1。傳遞參數未定義類型,如果參數在調用前未定義類型,系統自動將它定義為Variant類型,由于與過程或函數中的對就參數類型不相同,所以提示"ByRef參數類型不符"
2。傳遞參數類型已經定義,但由于定義方法不對,所以提示"ByRef參數類型不符"。具體情況如下:
當VB中如此定義變量時,將會出現VB.NET參數類型不符的問題
- Private Sub Command1_Click()
- Dim i , j As Integer
- i = 3
- j = 4
- Call get1(i, j)
- Text1.Text = i
- End Sub
- Private Sub get1
(ByRef para1 As Integer,
para2 As Integer)- para1para1 = para1 + para2
- End Sub
如果將 Dim i , j As Integer 改為
- Dim i As Integer
- Dim i As Integer
程序執行正常。也就是說,第一種方法的變量定義,只是對 J 做了定義,并未對前面的 I 進行定義
一般在過程和函數中定義參數時采用ByRef,則要求參數聲明的類型和實際參數的類型完全相同,否則就會出現VB.NET參數類型不符。