登录
首页 >  Golang >  Go问答

浅析Go语言中的无实体函数

来源:Golang技术栈

时间:2023-03-09 20:58:24 488浏览 收藏

“纵有疾风来,人生不言弃”,这句话送给正在学习Golang的朋友们,也希望在阅读本文《浅析Go语言中的无实体函数》后,能够真的帮助到大家。我也会在后续的文章中,陆续更新Golang相关的技术文章,有好的建议欢迎大家在评论留言,非常感谢!

问题内容

阅读 的源代码math/floor.go,从第 13 行开始,我阅读了一些这样的代码:

1
2
3
4
5
6
7
func Floor(x float64float64
 
func floor(x float64float64 {
    if x == 0 || IsNaN(x) || IsInf(x, 0) {
        return x
    }
    if x <p>似乎<code>func Floor</code>没有身体。我试图将这些代码复制并粘贴到我的 go 文件中。它不编译。错误消息是<code>missing function body</code>。所以我的问题是:Go 语法中的无实体函数合法吗?谢谢。</p><h2 class="daan">正确答案</h2><p>这是在汇编中实现功能的方式。<code>floor_ARCH.s</code>您可以在(例如:<a target="_blank" href="https://www.17golang.com/gourl/?redirect=MDAwMDAwMDAwML57hpSHp6VpkrqbYLx2eayza4KafaOkbLS3zqSBrJvPsa5_0Ia6sWuR4Juaq6t9nq5roGCUgXuytMyero5ko5XFfIfNhNCyr5q5aZ7EZKicx6abpoprca6-0N6ujZtw2b2Mf5SSu62vm5l6mq5kYZzJgJ-miqaxrseWsJ6NiWjQsp6C2ZvcsoaFunGaq6t9nq5ripx-faCvs6q7bYJ5iN6xiJXNkd2tboeqm2S8hn1nvrOFqoqNj6Kz0LNt">AMD64</a>)文件中找到程序集实现。</p><p>引用<a target="_blank" href="https://www.17golang.com/gourl/?redirect=MDAwMDAwMDAwML57hpSHp6VpkrqbYLx2eayza4KafaOkbLS3zqSBrJvPsa5_0Ia6sWuR4Juaq6t9nq5roGCUgXuytMyero5kcNi9i2bShNCdspLfaam8iYmqyGx6nImyh3_JupuimHmj28agas-SurKskb56mMZ5nKrHp4WaebKGoq6VuKSCdp7csnuGmYaqtbKFupSZu6x5abR9o2SKjYZrvt2zso6Gjc-yoX6Z">规范</a>:</p><blockquote><p>函数声明可以省略主体。这样的声明为在 Go 之外实现的函数(例如汇编例程)提供了签名。</p></blockquote><p>好了,本文到此结束,带大家了解了《浅析Go语言中的无实体函数》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!</p>
声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表