私の知る限り、の連結は"H" + 'i'
定数文字列を生成します。
私または C# は間違っていますか?
コード :
const string b = "H" + 'i';
// Error : The expression being assigned to 'b' must be constant
これはバグまたは機能としてカウントされますか?
これは微妙です。
'i'
文字リテラルです。
それを文字列に追加するには、定数式ではないボクシング変換 (string operator +(string x, object y)
仕様で指定されているように を呼び出す) が必要です。
詳細については、以前の回答を参照してください。
おそらくVS2010エラーがそれを定義するのに役立ちます:
Constant initializer must be compile-time constant
したがって、「H」+「i」はランタイム値です。