我有一個有bool數組成員的類。如果我修改這個數組的一個元素,應該創建一個新的實例修改副本。聽起來像是使用Immutable類型的絕佳機會。谷歌搜索顯示,微軟提供了一個新的庫Immutable Collections,這對另一個用例來說效果很好。但不適用於上述布爾數組成員。在C#中尋找可用的不可變布爾值數組#
看似合適的類型ImmutableArray暫時被刪除,文檔似乎也沒有包含索引器。潛在的替換ImmutableList不適用於結構。我不願意介紹另一個第三方庫,所以我想知道我有什麼選擇,我應該選擇哪一個。
我可以創建一個類Bool來滿足引用類型的要求。或者,我可以使用BitArray,而是試圖用這樣的失敗,編譯錯誤:
IReadOnlyList<BitArray> test = new IReadOnlyList<BitArray>(new BitArray());
因此,任何想法,我應該怎麼辦呢?
* ImmutableList *從什麼時候?我可以使用它與一個結構。 – xanatos
@xanatos我使用ImmutableList在另一臺計算機上再次使用一個結構體進行了測試,現在它似乎正常工作。不知道爲什麼問題出現了,因爲我只是在提問前兩天安裝了包裝。儘管如此,感謝您自己測試它,這爲我節省了一些麻煩。 :) – Johannes