Go では、構造体フィールドに struct タグの注釈を付けて、コンパイラまたは外部ツールに追加情報を提供できます。ただし、以下の例に示すように、構造体タグ内の関数名の前にアンダースコアを使用すると、混乱を招く可能性があります。
type CustomLabel struct { core.QObject _ func() `constructor:"init"` _ string `property:"text"` }
これらのアンダースコアは、空白のフィールドを示します。これらは直接参照することはできませんが、構造体のメモリ レイアウトに影響します。この場合、それらは位置合わせの目的で使用されます。
空白フィールドは、後続のフィールドを特定のメモリ位置に位置合わせしたり、別のシステムのデータ レイアウトに一致させたりするために使用できます。これにより、1 ステップで他のシステムとの間で効率的にデータを転送できるようになります。
注: 空白フィールドは特定の状況では有益ですが、不必要なオーバーヘッドが追加されるため、使用は控えめにする必要があります。
構造体タグの包括的な概要については、「構造体タグの用途は何ですか?」という質問を参照してください。行く?」
以上がGo Struct タグの関数名の前にあるアンダースコアの目的は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。