ホームページ  >  記事  >  バックエンド開発  >  Go Lang で継承された構造体配列

Go Lang で継承された構造体配列

WBOY
WBOY転載
2024-02-09 09:15:221257ブラウズ

Go Lang 中继承的结构体数组

Go Lang は、そのシンプルさと効率性により、プログラミングの世界で急速に登場した最新のプログラミング言語です。 Go Lang では、構造は関連データのセットを整理して保存するために使用できる一般的なデータ型です。ただし、場合によっては、複数の構造体を含む配列を定義し、それらを操作して継承する必要がある場合があります。この記事では、複雑なデータ構造とプログラミングのニーズにうまく対処するために、Go Lang で継承された構造配列を作成および使用する方法を紹介します。

質問の内容

最近、golang を使用してチェス ゲームを構築し始めましたが、直面した問題の 1 つは、さまざまな文字 (ポーン、ナイト、キング) を単一の配列に格納することでした。

リーリー

上記の例では、knight と king は同じ基本クラスを継承しているため、同じ配列に入れることができますか?

###のように###
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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。