Go のボディレス関数
math/floor パッケージのソース コードを探索しているときに、ボディのないいくつかのコード行に注意を引く場合があります。 。これらは、Go の構文の独特な特徴である本体のない関数のインスタンスです。
たとえば、関数 Floor は、13 行目から始まる本体なしで宣言されます。
func Floor(x float64) float64
Go の場合構文では、関数宣言では本体を省略できます。これにより、アセンブリ コードなどの外部ソースに関数の実装を委任しながら、関数のシグネチャを定義できます。
ボディのない関数の実際の実装は、AMD64 アーキテクチャの Floor_ARCH.s などのアセンブリ ファイルにあります。 。仕様には次のように記載されています:
「関数宣言は本体を省略できます。そのような宣言は、アセンブリ ルーチンなど、Go の外部で実装された関数の署名を提供します。」
以上がGo のボディレス関数とは何ですか?また、それらはどのように機能しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。