Rumah > pembangunan bahagian belakang > Golang > Mengapa Beberapa Fungsi Go, Seperti `Math.Floor`, Tanpa Badan?

Mengapa Beberapa Fungsi Go, Seperti `Math.Floor`, Tanpa Badan?

Linda Hamilton
Lepaskan: 2024-12-25 21:14:22
asal
702 orang telah melayarinya

Why Are Some Go Functions, Like `math.Floor`, Bodiless?

Fungsi Tanpa Badan dalam Go

Kod yang disediakan menunjukkan situasi pelik di mana fungsi Floor kelihatan tanpa badan, tanpa badan fungsi. Ini boleh ditemui apabila memeriksa kod sumber math/floor.go.

Setelah disiasat, ternyata fenomena ini adalah disengajakan. Dalam Go, fungsi tanpa badan dibenarkan untuk pelaksanaan yang ditulis dalam pemasangan. Pelaksanaan sebenar boleh didapati dalam fail floor_ARCH.s (cth., untuk AMD64).

Seperti yang dinyatakan dalam spesifikasi Go:

A function declaration may omit the body. Such a declaration provides the signature for a function implemented outside Go, such as an assembly routine.
Salin selepas log masuk

Peruntukan ini membenarkan fungsi peringkat rendah menjadi ditakrifkan dalam pemasangan sambil mengekalkan antara muka Go yang konsisten dan ditaip dengan baik.

Atas ialah kandungan terperinci Mengapa Beberapa Fungsi Go, Seperti `Math.Floor`, Tanpa Badan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan