gpt4 book ai didi

function - Golang 中的无实体函数

转载 作者:IT老高 更新时间:2023-10-28 13:06:29 25 4
gpt4 key购买 nike

阅读math/floor.go, starting from line 13的源代码,我读了一些这样的代码:

func Floor(x float64) float64

func floor(x float64) float64 {
if x == 0 || IsNaN(x) || IsInf(x, 0) {
return x
}
if x < 0 {
d, fract := Modf(-x)
if fract != 0.0 {
d = d + 1
}
return -d
}
d, _ := Modf(x)
return d
}

func Floor 似乎没有正文。我试图将这些代码复制并粘贴到我的 go 文件中。它不编译。错误消息是缺少函数体。所以我的问题是:Go 语法中的无实体函数合法吗?谢谢。

最佳答案

这是在汇编中实现函数的方式。您可以在 floor_ARCH.s(例如:AMD64)文件中找到程序集实现。

引用 spec :

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

关于function - Golang 中的无实体函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29285129/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com