我有一個對象層次是否Enumerable.Cast <T>複製對象?
public class MyBase {}
public class MyDerived : MyBase {}
,並有
List<MyBase> myList;
,實際上是充滿了MyDerived
情況下,爲了訪問列表作爲List<MyDerived>
,我做的如下:
myList.Cast<MyDerived>().ToList()
我讀Enumerable.Cast<T>
MSDN文檔,但它不是很清楚,我的Cast<T>
和ToList
操作是否作出新的拷貝到內存中的對象的,或者乾脆讓編譯器訪問現有的對象,好像他們是一List<MyDerived>
。
它實際上是_impossible_複製任意管理對象。 – SLaks 2012-02-08 18:04:29