Beispiel #1
0
        static void Main(string[] args)
        {
            /* Tipo de valor */
            Console.WriteLine("Tipos de valor");
            // Crear un punto con valores iniciales
            PuntoVal puntoV = new PuntoVal(5, 10);
            // asignar el punto creado a otra variable llamada otroPunto
            // Como es un tipo de valor esta operación hace una copia
            PuntoVal otroPunto = puntoV;

            // Modificaciones en otroPunto no afectan al punto original
            otroPunto.X = 100;
            otroPunto.Y = 60;
            // Verificamos los valores
            Console.WriteLine("punto: ({0},{1})", puntoV.X, puntoV.Y);
            Console.WriteLine("otroPunto: ({0},{1})", otroPunto.X, otroPunto.Y);

            /* Tipo de referencia */
            Console.WriteLine("\nTipos de referencia");
            PuntoRef puntoR = new PuntoRef(5, 10);
            // asignar el punto creado a otra variable llamada segundoPunto
            // Como es un tipo de referencia ahora hay dos referencias apuntando al mismo objeto
            PuntoRef segundoPunto = puntoR;

            // Modificaciones en cualquier referencia modifican al objeto
            segundoPunto.X = 200;
            segundoPunto.Y = 300;
            // Verificamos el cambio
            Console.WriteLine("punto: ({0},{1})", puntoR.X, puntoR.Y);
            Console.WriteLine("otroPunto: ({0},{1})", segundoPunto.X, segundoPunto.Y);
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            // Tipo de valor
            Console.WriteLine("Tipos de valor");
            PuntoVal puntoV    = new PuntoVal(5, 10);
            PuntoVal otroPunto = puntoV;

            otroPunto.X = 100;
            otroPunto.Y = 60;
            Console.WriteLine("punto: ({0}, {1})", puntoV.X, puntoV.Y);
            Console.WriteLine("otroPunto: ({0}, {1})", otroPunto.X, otroPunto.Y);

            Console.WriteLine();

            // Tipos de referencia
            Console.WriteLine("Tipos de referencia");
            PuntoRef puntoR       = new PuntoRef(5, 10);
            PuntoRef segundoPunto = puntoR;

            segundoPunto.X = 200;
            segundoPunto.Y = 300;
            Console.WriteLine("punto: ({0}, {1})", puntoR.X, puntoR.Y);
            Console.WriteLine("segundoPunto: ({0}, {1})", segundoPunto.X, segundoPunto.Y);

            Console.Read();
        }