Código de C sharp - Diferencia al llamar a un metodo pasando una clase o una estructura

Imágen de perfil

Diferencia al llamar a un metodo pasando una clase o una estructuragráfica de visualizaciones


C sharp

Publicado el 07 de Junio del 2013 por Administrador
4.777 visualizaciones desde el 07 de Junio del 2013. Una media de 28 por semana
Ejemplo que muestra que cuando una estructura es pasada a un método, se pasa una copia de la estructura, pero cuando se pasa una instancia de clase, se pasa una referencia de la misma.

Versión 1

Publicado el 07 de Junio del 2013gráfica de visualizaciones de la versión: Versión 1
4.778 visualizaciones desde el 07 de Junio del 2013. Una media de 28 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella


Forma parte de MSDN
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
// struct2.cs
using System;
 
class TheClass
{
    public int x;
}
 
struct TheStruct
{
    public int x;
}
 
class TestClass
{
    // se pasa una copia de la estructura
    public static void structtaker(TheStruct s)
    {
        // se varia el valor en la copia de la estructura
        s.x = 5;
    }
    // se pasa la referencia de la clase
    public static void classtaker(TheClass c)
    {
        // se varia el valor en la referencia de la clase
        c.x = 5;
    }
    public static void Main()
    {
        // instancia a la estructura
        TheStruct a = new TheStruct();
        // instancia a la clase
        TheClass b = new TheClass();
        // asignamos valores
        a.x = 1;
        b.x = 1;
        // ejecutamos un metodo pasando como parametro la estructura
        structtaker(a);
        // ejecutamos un metodo pasando como parametro la clase
        classtaker(b);
 
        // Mostramos el resultado
        Console.WriteLine("a.x = {0}", a.x);
        Console.WriteLine("b.x = {0}", b.x);
    }
}



Comentarios sobre la versión: Versión 1 (0)


No hay comentarios
 

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s2393