今回はC#の参照渡しを解説してきます。目次スポンサーリンクC#における参照渡しC#では関数の引数にrefをつけると参照渡しとなります。y)の方はxの値が変更されました。2つの関数の違いを具体的に説明すると、Calc1ではxそのもの(10)がyにコピーされています。Calc2ではxのアドレスがyに書き込まれています。こちらではxの値を書き換えることができるのがわかります。参照渡しの重要性たまに「参照渡しは時代遅れ」という言葉を聞きますが、C#界隈では参照渡しはかつてないブームになっています。これは、C#のコンパイラがC++製からC#製のRoslynに変わったことが大きいです。パフォーマンスに対する要求が今まで以上に大きくなったため、スタックを上手く使ってピープアロケートを避けて遅くなる原因を取り除く試みがされています。C#の参照渡しは「安全なポインタ」でもあるのです。都内の精密機器を作っている会社に勤務している14年目のエンジニアです。趣味は美味しいものを食べることとゴルフ。プログラムについて今まで学んだことをわかりやすく発信するサイトを目指しています。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。