是否有從POV性能差/的MemoryUsage之前初始化一個對象,或返回狀態之後,如「樣品」在:對象初始化
Function Foo() as ComplexObject
' is there a difference ??? '
' A '
' Dim obj as New ComplexObject() '
If condition Then Return Nothing
' is there a difference ??? '
' B '
Dim obj as New ComplexObject()
...
Return obj
End Function
我擔心編譯器會創建(並初始化)所有聲明的對象(在內部循環之外)。 – serhio 2010-07-17 22:33:57
關於VB.NET中C#或IIF運算符的'?'不能用於我的情況,因爲或者我返回一個Nothing(null)或者我需要用新的ComplexObject做一些事情,而不是直接返回它。 – serhio 2010-07-17 22:44:55
@serhio - *聲明*發生在IL的開始處;然而,創建**必須在您的代碼所說的邏輯點上發生。 – 2010-07-17 22:46:31