>  기사  >  백엔드 개발  >  Go Lang의 상속된 구조 배열

Go Lang의 상속된 구조 배열

WBOY
WBOY앞으로
2024-02-09 09:15:221297검색

Go Lang 中继承的结构体数组

Go Lang은 단순성과 효율성으로 인해 프로그래밍 세계에 빠르게 등장한 현대 프로그래밍 언어입니다. Go Lang에서 구조는 관련 데이터 세트를 구성하고 저장하는 데 사용할 수 있는 일반적인 데이터 유형입니다. 그러나 어떤 경우에는 여러 구조를 포함하는 배열을 정의하고 이에 대해 작업하고 상속해야 할 수도 있습니다. 이 기사에서는 복잡한 데이터 구조 및 프로그래밍 요구 사항에 더 잘 대처하기 위해 Go Lang에서 상속된 구조 배열을 만들고 사용하는 방법을 소개합니다.

질문 내용

최근에 golang으로 체스 게임을 만들기 시작했는데 제가 직면한 한 가지 문제는 다양한 캐릭터(예: 전당포, 기사, 왕)를 단일 배열에 저장하는 것이었습니다.

으아악

위의 예에서 기사와 왕은 동일한 기본 클래스에서 상속되므로 동일한 배열에 넣을 수 있나요?

좋아요

package main

import "fmt"

type character struct {
    currposition [2]int
}

type knight struct {
    c character
}

func (k knight) move() {
    fmt.println("moving kinght...")
}

type king struct {
    c character
}

func (k king) move() {
    fmt.println("moving king...")
}

해결 방법

기본 인터페이스다형성으로 사용하세요.

으아악

이 변경 사항으로 인해 다음 명령문이 컴파일됩니다.

으아악

또한 이 예와 같은 포인터 수신기가 필요할 수도 있습니다.

위 내용은 Go Lang의 상속된 구조 배열의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제