Richter "CLR via C#"有名な本アンボックス。多くの場合、スタックするフィールドのコピー
私は、アンボックスすると、ヒープ上のボックス化されていない値へのポインタを返しますが、C#ではポインタを取得できないことを理解しています。ヒープからスタックへのフィールドのコピーが完了しました(hereと回答)。私は、オブジェクトのアンボクシングやる私はそう
Console.WriteLine(v + ", " + (Int32)o);
行う
しかしは、 "o" は、ポインタだけコピーせずに、渡されました。 は「...これはアンボクシング操作(ただし、コピー操作)が必要です...」 (リヒター、129ページ)
さて、私の質問は次の場合、ヒープ上の箱なしの値に戻りポインタとするとき、それはまたコピースタックに?
おかげ
P.S:コード:
Int32 v = 5;
Object o = v;
Console.WriteLine(v + ", " + (Int32)o);
コードは、Richterの本(そのまま1行)からそのままコピーされ、通常どおりコンパイルされます。 – Philippe