private static void ModifyStructValues(ref PointStruct ps) { ps.no1 += 100; ps.no2 += 100; Console.WriteLine("Within ModifyStructValues: {0}, {1}", ps.no1, ps.no2); }
public static void StructVsClass() { PointClass pc = new PointClass(10, 20); Console.WriteLine("After Object for Class created: "); pc.ShowValues(); ModifyClassValues(pc); //Класс передается по ссылке Console.WriteLine("After ModifyClassValues Method Invoke: "); pc.ShowValues(); Console.WriteLine("\n--------------"); PointStruct ps = new PointStruct(10, 20); Console.WriteLine("After Object for Structure created: "); ps.ShowValues(); ModifyStructValues(ps); //Структура передается по значению //ModifyStructValues(ref ps); //Но структуру можно тоже передовать по ссылке используя модификаторы out и ref Console.WriteLine("After ModifyStructValues Method Invoke: "); ps.ShowValues(); }