0
如果我需要某種類型的Int32的引用類型包裝(例如數據庫Id),該怎麼辦?如何隱式地將Int32轉換爲我的類?我可以使用implicid轉換器將通用值類型的類型轉換(如Int32)擴展爲我的自定義類型嗎?
如果我需要某種類型的Int32的引用類型包裝(例如數據庫Id),該怎麼辦?如何隱式地將Int32轉換爲我的類?我可以使用implicid轉換器將通用值類型的類型轉換(如Int32)擴展爲我的自定義類型嗎?
創建靜態隱式轉換操作符:
public class MyClass
{
....
static public implicit operator MyClass(int value)
{
// Create a new instance of your class using the value.
}
...
}
創建後,你可以做這樣的事情:
MyClass myInstance = 48;
欲瞭解更多信息,請參閱MSDN:Using Conversion Operators (C# Programming Guide)
爲什麼你需要一個包裝?你能詳細說明一下嗎? –
只是int32或所有常見的值類型?使用隱式運算符或實現IConvertible。 –
如果你只需要一個可以爲null的int,那麼你可以使用'Nullable'或'int?'。 –