Una manera de imprimir el nombre de la instancia

user2102327:

Tengo una persona de clase:

class Person
{
    public string Name { get; set; }
    public int Age { get; set; }

    public override string ToString()
    {
        return "Person: " + Name + " " + Age;
    }
}

En la clase principal, puedo mostrar los detalles de todas las instancias de esta clase (personas):

    List<Person> itemsToPermute = new List<Person>();
    Person a = new Person { Name = "John", Age = 12 };
    Person b = new Person { Name = "Clara", Age = 57 };
    Person c = new Person { Name = "Martha", Age = 81 };
    Person d = new Person { Name = "Leon", Age = 23 };
    Person e = new Person { Name = "Rina", Age = 48 };

    itemsToPermute.Add(a);
    itemsToPermute.Add(b);
    itemsToPermute.Add(c);
    itemsToPermute.Add(d);
    itemsToPermute.Add(e);
    private static void Display(string prompt, List<Person> allPersons)
    {
        foreach (Person currentPerson in allPersons)
        {
            Console.WriteLine(currentPerson.ToString());
        }
    }

La salida es: Persona: Juan 12 Persona: Clara 57 ... y así sucesivamente. Me gustaría ser capaz de mostrar también el nombre de instancia: Persona: un Juan 12 ¿Hay una manera de recuperar el a (el nombre de la instancia)? El propósito de esta pregunta es para saber si hay una forma en C # para encontrar a cabo mediante programación el nombre de la instancia de la clase. Gracias de antemano.

Jon Skeet:

Una instancia no tiene un nombre. Un variables tiene un nombre, sino un objeto no "sabe" qué variables se refieren a ella, y no podría ser múltiplo de ellos. Por ejemplo:

Person person1 = new Person { Name = "John", Age = 12 };
Person person2 = person1;

Ahora tanto los valores de ambos person1y person2se refieren al mismo objeto - ¿Qué esperaría el nombre que sea?

Básicamente, si desea mantener algunos datos adicionales junto con el objeto, es necesario hacerlo de forma explícita, al igual que lo han hecho por Namey Age.

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=406930&siteId=1
Recomendado
Clasificación