ホームページ >バックエンド開発 >Golang >Golang 構造メソッドは複数のパラメータ型を受け入れます

Golang 構造メソッドは複数のパラメータ型を受け入れます

王林
王林転載
2024-02-10 23:30:101117ブラウズ

Golang 構造メソッドは複数のパラメータ型を受け入れます

php Editor Apple は本日、複数のパラメーター タイプを受け入れることができる Golang の構造メソッドを紹介します。 Golang は、オブジェクト指向プログラミング スタイルをサポートし、データ型として構造を提供する、オープン ソースの静的型付けプログラミング言語です。構造体メソッドは、構造体を操作および変更できる特別な関数です。他の言語とは異なり、Golang の構造メソッドは複数のパラメーター タイプを受け入れることができるため、開発者にさらなる柔軟性と利便性をもたらします。この機能を詳しく見てみましょう。

質問内容

私の方法は以下の通りです:

リーリー

ただし、この API を使用して structtype1 と structtype3 を処理する必要があります。これは、n が structtype3 になる可能性があることを意味します。

これを実現するには、以下のような別のメソッドを作成して同じコードを繰り返すのではなく、メソッドを変更するにはどうすればよいですか?

リーリー

編集: これらの構造はすべて私自身のカスタム構造です

解決策

この場合、generics を使用できます。

たとえば、structtype1structtype2print という名前のメソッドがあるとします。

リーリー

以下に示すようにインターフェース型宣言を定義できます。

リーリー

次に、型パラメーターを使用して、worker 構造体と updateinfo 関数を変更する必要があります。 (注: struct13print 関数はデモ用です。)

リーリー

上記の実装は以下のように使用できます。

リーリー

以上がGolang 構造メソッドは複数のパラメータ型を受け入れますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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