2015-11-16 49 views
1

在VB.NET中,聲明函數的數據類型和忽略它有什麼區別,我的意思是它聲明爲對象像變量或像其他東西?要更清楚這兩個功能哪個更好:聲明函數的DataType是否更好?

Private Function foo(ByVal text As String) 
    Return text 
End Function 


Private Function foo2(ByVal text As String) As String 
    Return text 
End Function 

第一個聲明爲「As Object」嗎?如果是這樣,那意味着第二個更好,對吧?

回答

2

第二個顯然更好,第一個只存在於向後兼容的原因。它只允許與Option Strict設置爲Off這是不建議無論如何。

這是compiler error你通常會得到:

選項嚴格On要求所有功能,性能和操作員 聲明有一個「As」子句

的返回類型爲Object爲首先。

+0

正確的,我試過了,它似乎像選項嚴格關閉默認情況下。這就是我需要的。 – IOS

+0

@IOS:不幸的是'關'它仍然是默認值。您應該將其更改爲在Visual Studio中打開默認項目設置。 –

+0

是啊!這聽起來比在每個類中放入Option Strict On好得多。感謝您的建議 – IOS