2/10のブログの補足。 csharplangリポジトリ内にいくつか提案ドキュメントが上がり始めたというものの中で、2点ほど取り上げて紹介。この2個だけ、ちょっと以前からの進展があったものです。 読み取り専用参照 Readonly references 最近、C#でも構造体を使ったパフォーマンス改善をいろいろやろうとしているわけですが。 参照戻り値とかはそのための機能ですし、 タプルは内部的にmutable(書き換え可能)な構造体になっています(パフォーマンス的にはそれが一番いい)。 ただ、大き目の構造体の受け渡しは、値渡し(コピーが発生)の負担が大きいです。 なので、例えば以下のように、参照引数を使ったりします。 static void AddTo(ref Matrix4x4 x, ref Matrix4x4 y) { x.M11 += x.M12; // 後略 // 4×4行列なので1