php エディター Apple は、マップとスライスでインターフェイスを使用する方法を紹介します。最新の Web 開発では、マップとスライスが一般的な機能要件です。インターフェイスを使用すると、マップとタイルの操作がより柔軟でスケーラブルになります。この記事では、インターフェイスの概念と、インターフェイスを使用してマップやタイルにさまざまな機能を実装する方法について詳しく説明します。この記事を読むことで、マップとタイルの使用を最適化し、ユーザー エクスペリエンスとパフォーマンスを向上させる方法を学びます。この興味深いトピックを一緒に探ってみましょう!
これらの構造体が実行できる「追加の」操作を気にせずに、どちらかのインターフェイスの具体的な実装を使用できる関数を実行できるようにしたいため、インターフェイス マッピングが必要です。実行する。
https://jordanorelli.com/post/32665860244/how-to-use-interfaces-in-go を読みました。ポインターとインターフェイスについては詳しく説明されていますが、まだやり方がわかりません。実際に私が望むことを達成します。
次のコードを試しています:
https://play.golang.com/p/nrh2iyk7t9f
リーリー出力:
リーリー私が本当に望んでいるのは、要素 1 がキー「one」にあることです。
参照 foo[c.name] = &c
を使用した代入によって問題が発生すると思います。そうしないと、「割り当ての iexample 値として c (concrete 型の変数) を使用できません: concrete は iexample を実装していません (メソッド getname にはポインター レシーバーがあります)
」というエラーが発生するため、これが必要です。
リーリー
このマップに正しい要素を含めるにはどうすればよいですか? 解決策あなたのしたことは正しいです。間違ったものをマップに入力しているだけです:リーリー
ループ変数は反復ごとに書き換えられるため、マップとスライスに&c を追加すると、追加するポインタは
c のアドレスとなり、上書きされます。反復ごとに。
以上がGo: マップとスライスでインターフェイスを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。