此代碼的行爲是什麼?將s ==「更改實例」或s ==「初始實例」?更多地方的C#單實例
SomeClass instance = new SomeClass();
instance.setName("initial instance")
List<SomeClass> list1 = new List<SomeClass>();
List<SomeClass> list2 = new List<SomeClass>();
list1.add(instance);
list2.add(instance);
list2.get(0).setName("changed instance");
string s = list1.get(0).getName();
編輯:好的,我做了一些代碼更改。我寫得很快。編輯2:爲什麼我問這個,不要嘗試?由於我在這臺電腦上沒有IDE,因爲有些限制。
測試這類問題的最佳方法是詢問編譯器。 – SWeko 2013-02-13 22:04:29
您不能直接從列表中調用setName/getName,它們是實例函數..您必須執行list2.First()。setName(... – 2013-02-13 22:04:30
雖然我們可以告訴你這個行爲,但你爲什麼要問我們?只要運行該程序,你就會知道。如果你有一個問題,你不可能通過運行代碼,然後問問 – 2013-02-13 22:04:56