Skip to content
戻る

C#基礎 値型と参照型

Published:  at  11:30

概要

https://amzn.to/4agfG9H 🔗

学生の時は先生が指導してくれていたけど
最近適当にしか書かなくなったから基礎練習です。

本の丸写しにならないように気を付けてます。
てか最初の章の話なのでネットで立ち読みもできますし
技術評論社のサイトにソースもあります。
雑な備忘録です。

目次

値型と参照型

C#の型は値型と参照型に分類される。
詳しい解説はこのサイトにありました。
http://ufcpp.net/study/csharp/oo_reference.html 🔗

あれ?参照型ってC言語のポインタだよね?君

とりまソースを書いて値の動きを追ってみる

https://gist.github.com/5914036c85162aa1594cccf8086d3acc 🔗

Init
     MyClass:mc  X=100 Y=200
     MyStruct:ms X=200 Y=100
Print
     MyClass:mc  X=200 Y=100
     MyStruct:ms X=20   Y=100
Main
     MyClass:mc  X=200 Y=100
     MyStruct:ms X=200 Y=100

メソッドで値を変更しています。ですが、メソッドには戻り値がなく
メインメソッドで値を受け取っているわけではありません

MyClassは参照型なので参照先がPrintメソッドから直接書き換えられ
値型のMyStruct構造体はメソッドに値がコピーされているので
メソッド内だけの値の動きになっています。

雑感

なんとなくの理解と人に説明できる理解は違いますね。
ささっとこの本終わらせてしまいたい



前の記事
C#基礎 オブジェクトと継承
次の記事
VBAでUTF-8 BOM無しファイル出力