Learning C #, que se encuentra debajo del fragmento de código.

 class Item
    {
      public string Name;
      public Item Parent;
    }

¿Qué significa debajo de la línea, que tiene el mismo nombre que una clase? ver adjunto

public Item Parent;

c#
-5
user3233751 10 oct. 2019 a las 19:45

1 respuesta

La mejor respuesta

Empecemos por la línea que entiendes:

public string Name;
//  ^    ^     ^
//  |    |     |
//  |    |     +-- Name of the field
//  |    +-------- Type of the field
//  +------------- Accessibility of the field

Entonces, tenemos un campo llamado Name que es de tipo string y es público.

Ahora...

public Item Parent;
//  ^    ^     ^
//  |    |     |
//  |    |     +-- Name of the field
//  |    +-------- Type of the field
//  +------------- Accessibility of the field

Tenemos un campo llamado Parent que es de tipo Item y es público.

que tiene el mismo nombre que una clase?

No, no lo hace. Tiene el mismo tipo que la clase. Lo cual es perfectamente válido, porque una clase es un tipo de referencia .

Lo que está diciendo es que un Item puede tener un Parent que también sería un Item.

Es decir, un Item tiene uno o ninguno Parent s, también inferimos que no tiene ninguno, uno o varios hijos. Podríamos tomarlo como una estructura jerárquica con navegabilidad desde las hojas hasta las raíces (podría haber múltiples raíces). Sin embargo, no hay nada que evite los bucles. Y, sí, también podríamos tomarlo como una lista vinculada.

0
Theraot 10 oct. 2019 a las 16:57