Estructura anidada en Golang

Una estructura o struct en Golang es un tipo definido por el usuario que nos permite crear un grupo de elementos de diferentes tipos en una sola unidad. Cualquier entidad del mundo real que tenga un conjunto de propiedades o campos puede representarse como una estructura.

Estructura anidada en Golang

Cómo usar estructuras anidadas en Golang

El lenguaje Go permite estructuras anidadas. Una estructura que es un campo de otra estructura se denomina estructura anidada. En otras palabras, una estructura dentro de otra estructura se llama Estructura Anidada. Sintaxis:

type struct_name_1 struct{
  // Các trường
} 
type struct_name_2 struct{
  variable_name  struct_name_1

}

Considere el siguiente ejemplo para comprender la estructura anidada en Golang:

Ejemplo 1:

// Chương trình Go minh hoạc
// cấu trúc lồng nhau
package main

import "fmt"

// Tạo cấu trúc
type Author struct {
	name string
	branch string
	year int
}

// Tạo cấu trúc lòng nhau
type HR struct {

	// cấu trúc là một trường
	details Author
}

func main() {

	// Khởi tạo các trường
	// của cấu trúc
	result := HR{
	
		details: Author{"Sona", "ECE", 2013},
	}

	// Hiện giá trị
	fmt.Println("\nDetails of Author")
	fmt.Println(result)
}

Resultado:

Details of Author
{{Sona ECE 2013}}

Ejemplo 2:

// Chương trình Golang minh họa
// cấu trúc lồng nhau
package main

import "fmt"

// Tạo cấu trúc
type Student struct {
	name string
	branch string
	year int
}

// Tạo cấu trúc lồng nhau
type Teacher struct {
	name string
	subject string
	exp	 int
	details Student
}

func main() {

	// Khởi tạo các trường
	// của cấu trúc
	result := Teacher{
		name: "Suman",
		subject: "Java",
		exp:	 5,
		details: Student{"Bongo", "CSE", 2},
	}

	// Hiện giá trị
	fmt.Println("Details of the Teacher")
	fmt.Println("Teacher's name: ", result.name)
	fmt.Println("Subject: ", result.subject)
	fmt.Println("Experience: ", result.exp)

	fmt.Println("\nDetails of Student")
	fmt.Println("Student's name: ", result.details.name)
	fmt.Println("Student's branch name: ", result.details.branch)
	fmt.Println("Year: ", result.details.year)
}

Resultado:

Details of the Teacher
Teacher's name:  Suman
Subject:  Java
Experience:  5

Details of Student
Student's name:  Bongo
Student's branch name:  CSE
Year:  2

Ejemplo 3:

En Go, una estructura puede tener campos que son en sí mismos estructuras, llamadas estructuras anidadas. A continuación se muestra un ejemplo de una estructura que tiene una estructura anidada:

package main

import (
	"fmt"
)

type Address struct {
	Street	 string
	City	 string
	State	 string
	PostalCode string
}

type Person struct {
	FirstName string
	LastName string
	Age	 int
	Address Address
}

func main() {
	p := Person{
		FirstName: "John",
		LastName: "Doe",
		Age:	 30,
		Address: Address{
			Street:	 "123 Main St",
			City:	 "Anytown",
			State:	 "CA",
			PostalCode: "12345",
		},
	}

	fmt.Println(p.FirstName, p.LastName)
	fmt.Println("Age:", p.Age)
	fmt.Println("Address:")
	fmt.Println("Street:", p.Address.Street)
	fmt.Println("City:", p.Address.City)
	fmt.Println("State:", p.Address.State)
	fmt.Println("Postal Code:", p.Address.PostalCode)
}

Resultado:

John Doe
Age: 30
Address:
Street: 123 Main St
City: Anytown
State: CA
Postal Code: 12345

Aquí definimos dos tipos de estructuras: Persona y Dirección. La persona tiene un campo de estructura anidado llamado Dirección. En la función principal, creamos una nueva instancia de Persona con un campo Dirección. Luego imprimimos los distintos valores de campo de las estructuras Persona y Dirección usando la notación de puntos para acceder a los campos anidados.

Dejar un comentario

Solución de problemas de actualizaciones de error H en Microsoft Teams

Solución de problemas de actualizaciones de error H en Microsoft Teams

¿Tiene problemas con el Error H de Microsoft Teams durante las actualizaciones? Descubra cómo solucionar el Error H de Microsoft Teams, sus causas comunes y soluciones rápidas para restablecer una colaboración fluida. Actualizado con las últimas soluciones.

Solución de problemas de errores de llavero en Microsoft Teams para Mac

Solución de problemas de errores de llavero en Microsoft Teams para Mac

¿Tienes problemas con el llavero de errores de Microsoft Teams para Mac? Descubre soluciones paso a paso y probadas para macOS y recupera una colaboración fluida. ¡Soluciones rápidas en el interior!

Cómo solucionar el error 1200 de Microsoft Teams en tu teléfono (iOS/Android)

Cómo solucionar el error 1200 de Microsoft Teams en tu teléfono (iOS/Android)

¿Cansado de que el error 1200 de Microsoft Teams bloquee tus llamadas? Descubre soluciones rápidas y paso a paso para iOS y Android y vuelve a trabajar en equipo sin problemas rápidamente, ¡sin necesidad de conocimientos técnicos!

¿Por qué falló mi grabación en Microsoft Teams? Razones comunes

¿Por qué falló mi grabación en Microsoft Teams? Razones comunes

¿Frustrado porque tu grabación de Microsoft Teams falló? Descubre las razones más comunes, como problemas de permisos, límites de almacenamiento y fallos de red, además de soluciones paso a paso para evitar futuros fallos y grabar siempre de forma impecable.

¿Por qué no puedo ver las salas de grupos pequeños en mi reunión de Teams?

¿Por qué no puedo ver las salas de grupos pequeños en mi reunión de Teams?

¿Frustrado porque las salas de reuniones no aparecen en tu reunión de Teams? Descubre las principales razones por las que no puedes verlas en Teams y sigue nuestras soluciones paso a paso para que funcionen correctamente en minutos. ¡Ideal tanto para organizadores como para participantes!

Solución de errores de red de Microsoft Teams en redes Wi-Fi públicas

Solución de errores de red de Microsoft Teams en redes Wi-Fi públicas

¿Tienes problemas con un error de red de Microsoft Teams en una red Wi-Fi pública? Obtén soluciones instantáneas como ajustes de VPN, comprobaciones de puertos y borrado de caché para restaurar llamadas y reuniones sin problemas. Guía paso a paso para una solución rápida.

¿Dónde está la papelera de reciclaje de Microsoft Teams? Cómo recuperar archivos borrados

¿Dónde está la papelera de reciclaje de Microsoft Teams? Cómo recuperar archivos borrados

¿Perdiste archivos importantes en Microsoft Teams? Descubre la ubicación exacta de la Papelera de reciclaje de Microsoft Teams y sigue nuestros pasos comprobados para recuperar archivos eliminados de forma rápida y sencilla, ¡sin necesidad de conocimientos técnicos!

Cómo configurar el estado Fuera de oficina en Microsoft Teams

Cómo configurar el estado Fuera de oficina en Microsoft Teams

Descubre cómo configurar el estado "Fuera de oficina" en Microsoft Teams con sencillos pasos para escritorio, móvil y sincronización con Outlook. Mantén la profesionalidad mientras estás fuera: ¡configuración rápida en minutos!

Dónde encontrar el código QR de Microsoft Teams para iniciar sesión rápidamente en dispositivos móviles

Dónde encontrar el código QR de Microsoft Teams para iniciar sesión rápidamente en dispositivos móviles

Descubre exactamente dónde encontrar el código QR de Microsoft Teams para iniciar sesión móvil ultrarrápido. Guía paso a paso con imágenes para conectarte en segundos, ¡sin necesidad de contraseñas!

Solución del error al unirse a una reunión en Microsoft Teams mediante un enlace directo

Solución del error al unirse a una reunión en Microsoft Teams mediante un enlace directo

¿Tienes problemas con el error al unirte a una reunión de Microsoft Teams? Descubre pasos comprobados para solucionarlo mediante enlaces directos. Soluciones rápidas para unirte sin problemas, ¡sin necesidad de conocimientos técnicos!