2013-12-18 25 views
0

我有一個C#列表和參考問題。 我有兩個不同的列表,都可以包含某個對象。如果我使用List.Add(Object)和List2.Add(Object)將相同的實例添加到這兩個列表中,它們是否都會引用同一個對象? 例如,如果我從一個列表中訪問該對象,請編輯該特定對象的某些屬性,這些更改是否可以在「系統範圍內」進行觀察?C#列表參考一致性

實際上,這是一個GridView的問題,我只有一個包含2個對象的表,我需要一個只包含其中一個對象的表。那麼我可以創建一個僅包含對這些特定對象的引用的不同列表嗎? C++雖然更復雜,但在這裏不太模糊。

+1

你爲什麼不嘗試一下,找出答案。 –

+0

+1 Dan-o。有些事情你只需要自己測試一下。本網站不應使用編程語言規範提交。 – dburner

回答

4

是的,他們都會引用同一個對象。您正在將參考文獻添加到列表中。從概念上講,你不是添加對象本身,而是添加對象。

我不會說C++的指針和引用是相同的,但概念上它們是相同的。在C++中,指向實際實例的指針(實際上指向內存位置 - 所有對象都是內存區域),並且在C#中引用「引用」實際實例。