C#では、
static readonly string MyStr;
そして
const string MyStr;
?
ベストアンサー1
文字列を使用するとconst
、コンパイラは文字列の値を埋め込みますコンパイル時に
したがって、別のアセンブリで値を使用しconst
、元のアセンブリを更新して値を変更した場合、再度更新するまで他のアセンブリでは変更が反映されません。コンパイルそれ。
文字列static readonly
は、実行時に検索される通常のフィールドです。したがって、フィールドの値が別のアセンブリで変更された場合、アセンブリが読み込まれるとすぐに、再コンパイルせずに変更が反映されます。
これは、文字列がやstatic readonly
などの非定数メンバーを使用できることも意味します。文字列は、他の定数またはリテラルを使用してのみ初期化できます。また、文字列は静的コンストラクターで設定できますが、文字列はインラインでのみ初期化できます。Environment.UserName
DateTime.Now.ToString()
const
static readonly
const
はstatic string
変更可能であることに注意してください。static readonly
代わりに を使用する必要があります。