有人會向我解釋爲什麼在抽象CollectionBase
類(在System.Collections
從IList
派生)它沒有IList
成員實現?我認爲這是強制性的。CollectionBase否IList實現?
回答
它實現IList
explicitly,所以你需要將自己的CollectionBase
實例轉換到IList
訪問的成員。
IList list = (IList)collectionBase;
list.Add(...);
當我檢查CollectionBase的定義時,我看到它們不是它們應該在CollectionBase中顯式定義或不是? – Mikatsu 2013-02-24 22:10:33
@Mikatsu - 我不知道你從哪裏得到定義,但如果你看[這裏](http://msdn.microsoft.com/en-us/library/system.collections.collectionbase.aspx)並向下滾動到「顯式接口實現」,您會看到它明確實現了「IList」和「ICollection」。 – Lee 2013-02-24 22:18:22
我已經在開始帖子添加了一個圖像爲什麼它不同於msdn?我在Visual Studio中使用F12。 – Mikatsu 2013-02-24 22:30:55
[** It **](http://msdn.microsoft.com/en-us/library/system.collections.collectionbase.aspx)實現了例如IList.Add,IList.Contains,IList.IndexOf,IList.Insert,IList.IsFixedSize,IList.IsReadOnly,IList.Item,IList.Remove'。那麼問題是什麼? – 2013-02-24 21:56:04
這就是我正在尋找,但是當我檢查CollectionBase定義我不能看到沒有IList實現... – Mikatsu 2013-02-24 22:15:12
你在尋找'CollectionBase'的_definition_?我總是先看看MSDN:http://msdn.microsoft.com/en-us/library/system.collections.collectionbase.aspx – 2013-02-24 22:16:10