2009-04-22 78 views

回答

11

會有什麼意義?任何沒有構造函數的.NET值類型都有一個文字形式。如果它們沒有文字形式,那麼就不可能提供一個將其類型作爲參數的構造函數。

既然你有字面意思,提供一個構造函數,採取這種文字是沒有意義的。

沒有文字,無法
int i = new int(new int(new int(...))); 
隨着文字
int i = new int(5); // What is the point? Would the constructor do *anything* 
        // besides int i = 5? 
0

這可能聽起來很奇怪,但你爲什麼要? - 複雜類型是有意義的,因爲您使用1-n輸入來獲得結果,但int只是返回一個int ...所以爲什麼?

+0

只是因爲好奇才想知道。就像你可能只想直接使用類似Int64的類型一樣,就像其他類型一樣,即使類型可能會從其他類型轉換,如:MyType mine = 5; – 2009-04-22 22:38:25

2

設計的一部分知道該怎麼離開了。由於它沒有增加價值,所以沒有編碼。

1

只是這些類型只有一個默認的構造函數。許多其他複雜的.net類型也只有一個默認的構造函數。我猜想沒有參數化的原因是因爲正如其他答案所提到的那樣,其中沒有一個真正的理由。

相關問題