ジェネリック機能を使用すると、Go 言語で複数のデータ型に適用できる一般的なコードを作成できます。これは、タイプ MyType[T any] などのジェネリック型変数を使用して実装されます。ここで、T は要素の型を指定します。ジェネリックには次の利点があります。 コードの再利用性: ジェネリック コードは、型固有のコードを記述する必要がなく、さまざまな型に同時に適用できます。より柔軟なコード: さまざまな入力タイプに適応できるため、さまざまなシナリオのコード作成が簡素化されます。型安全性: コンパイル時の型チェックにより互換性が保証され、型関連のエラーが防止されます。
ジェネリックスを使用してより一般的な Go 言語コードを記述する方法
ジェネリックスは、最近 Go 言語に導入された重要な機能です。これにより、より柔軟で再利用可能なコードを作成できるようになります。ジェネリックスを使用すると、タイプごとに個別のコードを記述することなく、さまざまなタイプのデータに対応するコードを作成できます。
ジェネリックを使用するには、角括弧 [ ]
を使用してジェネリック型変数を宣言する必要があります。例:
type MyType[T any] struct { data []T }
上記の例では、MyType
は任意の型の要素を受け入れることができるジェネリック型であり、型は T
で指定されます。
次に、ジェネリックスを使用して作成されたソートされたリストの実際的なケースを示します:
// 功能:对列表进行排序 func Sort[T any](list []T, compare func(T, T) int) []T { // 拷贝列表 result := make([]T, len(list)) copy(result, list) // 使用内置的 Sort 包对其进行排序 sort.Slice(result, func(i, j int) bool { return compare(result[i], result[j]) < 0 }) return result }
この例では、Sort
関数を使用します。は、あらゆるタイプのリストをソートできる汎用関数です。リストとリスト内の要素を比較する比較関数の 2 つのパラメータを受け入れます。戻り値はソートされたリストです。
ジェネリックを使用すると、次のような多くの利点があります:
以上がジェネリックスを使用してより一般的な Golang コードを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。