readonly表示唯讀,表示不能進行寫操作
const表示不變常量,表示不能被修改
1.都是用來標識常量
2.初始化賦值不同:const必須在宣告同時賦值、readonly還可以在建構函式中賦值
3.const是編譯時常數(編譯時直接替換),readonly為執行時常數
4.const預設為靜態,readonly預設為非靜態,要顯示宣告為static
5.const修飾值型別或引用型別,但引用型別只可以為string或值為null的引用型別,不可以修飾object,array,struct。readonly沒有限制
6.適當的情況可以用const與static readonly互換
const 和 readonly 的區別
const 和 readonly 的區別,總是不太清楚,於是查了查資料。const 的概念就是乙個包含不能修改的值的變數。常數表示式是在編譯時可被完全計算的表示式。因此不能從乙個變數中提取的值來初始化常量。如果 const int a b 1 b是乙個變數,顯然不能再編譯時就計算出結果,所以常量是不...
readonly 和const的區別
const 的概念就是乙個包含不能修改的值的變數。常數表示式是在編譯時可被完全計算的表示式。因此不能從乙個變數中提取的值來初始化常量。如果 const int a b 1 b是乙個變數,顯然不能再編譯時就計算出結果,所以常量是不可以用變數來初始化的。readonly 允許把乙個字段設定成常量,但可以...
Const和ReadOnly的區別
1.const 和readonly 都是用來表示常量的。2.初始化賦值不同 a const 必須在宣告的時候即賦值。b readonly 可以在初始化的過程中賦值。在其他地方賦值,編譯器會報錯。因此,根據所使用的建構函式,readonly 字段可以具有不同的值。3.const 是編譯時常數,而 re...