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)

}
相关推荐
weixin_431600446 分钟前
NestJS 入门(7):生命周期钩子——构造函数和 `OnModuleInit` 差在哪?
前端·后端·学习·node.js·nest.js
小强库计算机毕业设计10 分钟前
基于 Spring Boot + Vue3 的校园管理系统
java·spring boot·后端·项目实战·管理系统·技术分享·校园管理系统实战
霸道流氓气质20 分钟前
Java中信号量(Semaphore):从本地到分布式
java·开发语言·分布式
canonical_entropy1 小时前
关于《Mission Driver:Loop Engineering 的一种通用参考实现》的补充说明
后端·agent·ai编程
路溪非溪1 小时前
Python语言的执行流程总结
开发语言·python
__zRainy__1 小时前
Node系列 · Node基础:Node.js 概述
后端·node.js
民乐团扒谱机1 小时前
【超详解】量子克拉美罗下界QCRB:时延估计精度极限推导+MATLAB多场景绘图实战
开发语言·机器学习·matlab·量子力学·qcrb
星火10241 小时前
【LangChain4j系列06】ChatMemory 对话记忆管理
人工智能·后端
netCode1 小时前
Git一文带你理解如何使用
后端
乐观勇敢坚强的老彭2 小时前
C++ 竞赛常用算法模板速查表
开发语言·c++·算法