■
class Program { static void Main(string[] args) { var h = new Hoge(); h.set(2); Console.WriteLine(h.piyo); var f = new Fuga(); f.set(2); Console.WriteLine(f.piyo); } } class Hoge { public int piyo; } struct Fuga { public int piyo; } static class Extension { public static void set(this Hoge h, int i) { h.piyo = i; } public static void set(this Fuga f, int i) { f.piyo = i; } }
structは値渡し
すっかり忘れていた…