登录
首页 >  Golang >  Go问答

Go中的函数声明严格吗?

来源:stackoverflow

时间:2024-04-12 22:36:22 282浏览 收藏

各位小伙伴们,大家好呀!看看今天我又给各位带来了什么文章?本文标题《Go中的函数声明严格吗?》,很明显是关于Golang的文章哈哈哈,其中内容主要会涉及到等等,如果能帮到你,觉得很不错的话,欢迎各位多多点评和分享!

问题内容

为什么这段代码有效?函数 introduce() 接受一个指向 person 的指针,但是当我们创建 p 时,它是一个对象(而不是指针)。 那么函数声明不严格吗?

package main

import "fmt"

type Person struct {
    Name string
}

func (p *Person) Introduce() {
    fmt.Printf("Hi, I'm %s\n", p.Name)
}

func main() {
    p := Person{Name: "Fedya"}
    fmt.Println(p)
    p.Introduce()

    p1 := &Person{Name: "Fedya"}
    fmt.Println(p1)
    p1.Introduce()
}

解决方案


Per the specification

今天关于《Go中的函数声明严格吗?》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>