我有一個對象列表。一旦創建,列表不會改變 - 但是對象屬性的值將會改變。保持列表中對象「指針」的最佳方式是什麼?
我需要在任何時候在列表中維護兩個「指針」。例如,「這個」,「那個」
我能做到這一點僅僅是保持兩個數字指標:
this=3
that=7
doSomething(mylist[this])
doSomethingElse(mylist[that])
this=9
doSomethingNew(mylist[this])
或者,我可以通過引用而不是對象做到這一點? e.g像
this=mylist[3]
that=mylist[7]
doSomething(this)
doSomethingElse(that)
this=mylist[9]
doSomethingNew(this)
將在「此」影響到列表中的對象,而不是它的一個副本,所有的操作即更改將被保留?
依賴於在該列表中的對象。如果它是不可變的,那麼你不應該擔心,如果它是可變的,你傳遞的是對象的引用,並且你不能有任何*保證對象狀態不變* –
什麼樣的對象是這些?如果類定義是你的,請將其添加。 –
對象的屬性值將隨時間而改變。 –