中級 › struct(値型)とclass(参照型)のコピーの違い › パターン3
struct(値型)とclass(参照型)のコピーの違い
structは値型、classは参照型です。
1 _________ Item { ^ 2 public int Price; 3 } 4 class Program { 5 static void SetPrice(Item item) { item.Price = 999; } 6 static void Main(string[] args) { 7 Item i = new Item(); 8 i.Price = 100; 9 SetPrice(i); 10 System.Console.WriteLine(i.Price); 11 } 12 }
出力: 999
空欄を埋めてビルドを通す
メソッドに値型を渡すと、引数はコピーになります。SetPrice内での変更は呼び出し元のiに反映されません。
次の問題