go语言给结构体绑定方法

定义结构体person,里面有一个字段Name。因为person首字母小写,没有暴露,所以定义函数NewPerson,返回一个person指针。

go 复制代码
package test_utils
import (
	"fmt"
)

type person struct{
	Name string
}
func (p person) Test(){
	fmt.Println("Hello",p.Name)
}

func NewPerson(n string) *person{
	return &person{n}
}

调用NewPerson函数返回person指针,调用person结构体绑定的Test函数。

go 复制代码
package main
import (
	"fmt"
	"test_utils"
)

func main(){
	p:=test_utils.NewPerson("Tom")
	p.Test()
	fmt.Println(*p)

}
相关推荐
Full Stack Developme2 分钟前
Hutool CollUtil 教程
java·开发语言·windows·python
Shadow(⊙o⊙)7 分钟前
mkfifo()命名管道-FIFO客户端 服务端模拟。*System V消息队列、信号量(信号灯)。
linux·运维·服务器·开发语言·c++
zfoo-framework11 分钟前
kotlin中体会到一些比较好用的点
android·开发语言·kotlin
赵谨言11 分钟前
基于C#的在线编码与自动化测试全栈Web平台的设计与实现
开发语言·前端·c#
砍材农夫13 分钟前
物联网实战:Spring Boot MQTT | 客户端框架比对
spring boot·后端·物联网
牛油果子哥q18 分钟前
C++六大默认成员函数深度精讲:构造/析构/拷贝/赋值/移动构造/移动赋值、编译器生成规则、深浅拷贝终极坑点与工程实战
开发语言·c++
Gopher_HBo20 分钟前
存储层LSM Tree
后端·架构
Shadow(⊙o⊙)20 分钟前
System V共享内存详解,shm系列接口,三种共享内存删除机制。System V通信缺点分析
linux·运维·服务器·开发语言·网络·c++
ZC跨境爬虫22 分钟前
跟着 MDN 学JavaScript day_4:如何存储你需要的信息——变量
开发语言·前端·javascript·ui·ecmascript
1892280486122 分钟前
NV077固态MT29F16T08ESLCHL6-QAES:C
c语言·开发语言·性能优化