Go でのサイズ変更可能な配列の実装
Go に移行中の C 開発者は、次の目的で std::vector クラスを使用することに慣れているかもしれません。動的配列。 Go では、追加可能なスライス データ構造を使用して同様の機能を実現できます。
標準的なアプローチ
構造体の動的配列を作成するには、構造体の型を定義できます。次に、スライスを使用して構造体のインスタンスを保存します。スライスのサイズは動的に変更されるため、実行時に要素を追加または削除できます。
サンプル コード スニペット
type myStruct struct { b int c string } func main() { // Create an empty slice of myStruct a := []myStruct{} // Append elements to the slice a = append(a, myStruct{1, "hello"}) a = append(a, myStruct{2, "world"}) // Iterate over and print the slice for _, v := range a { fmt.Println(v) } }
キー関数: append()
append() 関数は、Go でスライスを操作する際の中心となります。最初の引数としてスライスを受け取り、残りの引数として 1 つ以上の要素を受け取ります。指定された要素をスライスに追加し、追加された要素を含む新しいスライスを返します。
詳細情報
スライスと append() 関数の詳細については、 Go 仕様を参照してください: https://go.dev/ref/spec#Appending_and_copying_slices
以上がGo でサイズ変更可能な配列を実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。