static void Main(string[] args) { Console.WriteLine("ClassExample - HEAP (Global)"); var classexample = new ClassExample(1, 1); classexample.DisplayValues(); ModifyValues(classexample); classexample.DisplayValues(); Console.WriteLine("\n-----------------------------\n"); Console.WriteLine("StructExample - STACK (LOCAL)"); var structexample = new StructExample(1, 1); structexample.DisplayValues(); ModifyValues(structexample); structexample.DisplayValues(); Console.ReadKey(); }
static void Main(string[] args) { Console.WriteLine("Classexample - HEAP (GLOBAL"); var classexample = new ClassExample(1, 1); classexample.DisplayValues(); Console.WriteLine("\n------------------------\n"); Console.WriteLine("Structexample - HEAP (LOCAL"); var structexample = new ClassExample(1, 1); classexample.DisplayValues(); Console.ReadKey(); }
static void Main(string[] args) { Console.WriteLine("ClassExample - HEAP (GLOBAL)"); var classexample = new ClassExample(1, 1); classexample.DisplayValues(); ModifyValues(classexample); classexample.DisplayValues(); Console.WriteLine("\n---------------------------------------------\n"); Console.WriteLine("StructExample - STACK (LOCAL)"); var structexample = new StructExample(1, 1); structexample.DisplayValues(); ModifyValues(structexample); structexample.DisplayValues(); Console.ReadKey(); /* * int Nr1 = 1; -> Global * int Nr2 = 1; -> Global * * function * { * Nr1 = 2 -> Nr1 är nåbar från ovan då den är global / Class * Nr2 = 2 -> Nr1 är nåbar från ovan då den är global / Class * * int Nr2 = 1 -> Local Lever endast i detta kodblock * Nr1(Copy) = 2 -> Local Struct kopierar värdet från en funktion och sedan återgår till sitt vanliga värde * Nr2(Copy) = 2 -> Local * Nr1 += 1; -> Local dvs Nr1 = 2 * * } * * Här är structens värden 1 igen * Medans Classens värden är 2 efter funktionen * */ }
static void Main(string[] args) { Console.WriteLine(); var classexample = new ClassExample(1, 1); classexample.DisplayValues(); ModifyValues(classexample); classexample.DisplayValues(); Console.WriteLine("--------------------------------------"); Console.WriteLine(); var structexample = new structExample(1, 1); structexample.DisplayValues(); ModifyValues(structexample); structexample.DisplayValues(); }