/* C# Programming Tips & Techniques by Charles Wright, Kris Jamsa Publisher: Osborne/McGraw-Hill (December 28, 2001) ISBN: 0072193794 */ // // ValType.cs -- Demonstrates that C# always creates a structure instance as // a value-type variable even using the new operator. // Compile this program using the following command line: // C:>csc ValType.cs // namespace nsValType { using System; public struct POINT { public int cx; public int cy; } public class ValType { static public void Main() { POINT point1; point1.cx = 42; point1.cy = 56; ModifyPoint (point1); Console.WriteLine ("In Main() point2 = ({0}, {1})", point1.cx, point1.cy); POINT point2 = new POINT (); // point2.cx = 42; // point2.cy = 56; Console.WriteLine (); ModifyPoint (point2); Console.WriteLine ("In Main() point2 = ({0}, {1})", point2.cx, point2.cy); } static public void ModifyPoint (POINT pt) { pt.cx *= 2; pt.cy *= 2; Console.WriteLine ("In ModifyPoint() pt = ({0}, {1})", pt.cx, pt.cy); } } }