Dot-Net
為什麼 Tuple 的項目是只讀的?
我正在考慮使用
Tuple類來儲存我在程序中需要的 2 個整數資訊(StartAddress、EndAddress)。但是我發現
Tuple項目是只讀的,所以如果我需要為一個項目設置一個值,我需要重新實例化一個元組。這個設計決定背後的原因是什麼?
元組起源於函式式程式。在(純)函式式程式中,一切都在設計上是不可變的——某個變數在任何時候都只有一個定義,就像在數學中一樣。.NET 設計者在將函式式風格集成到 C#/.NET 時明智地遵循了相同的原則,儘管它最終主要是一種命令式(混合?)語言。
注意:雖然我懷疑元組是不可變的這一事實並沒有真正使您的任務變得更加困難,但您可能還想使用匿名類型(或者可能只是一個簡單的結構)。