簡體   English   中英

非泛型函數以獲取system.type的默認值

[英]Non-generic function to get the default value of a system.type

我只會在運行時知道類型。

Public Shared Function DefaultValue(Type As System.Type) As Object
  '???
End Function

任何人都可以填寫該功能嗎? 謝謝!

編輯:答案和更多討論之后,我了解到您可以這樣做:

MyExpression = Nothing

確定表達式是否包含其類型的默認值。 在我的庫中擁有共享功能可能會幫助我記住有關該語言的信息,但否則不需要該功能。 感謝Dave指出這一點。

我認為有一個非常簡單的方法可以解決此問題:如果類型不是值類型,則不返回任何內容,否則返回該類型的新實例,該實例將被初始化為默認值:

Public Shared Function DefaultValue(Type As System.Type) As Object
    If Not Type.IsValueType Then
        Return Nothing
    Else
        Return Activator.CreateInstance(Type)
    End If
End Function

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM