new用于分配零值内存并返回指向它的指针,仅支持基本类型、结构体等,不支持slice/map/channel;make仅用于slice/map/channel的初始化,返回值本身而非指针。
在 Go 中,new 和 make 都用于内存分配,但它们用途不同,且都不能直接“创建指针”——new 返回指针,make 返回值本身(仅用于 slice、map、channel),需额外取地址才能获得
指针。
new(T) 为类型 T 分配零值内存,返回 *T。它不调用构造函数(Go 没有构造函数),也不支持 slice/map/channel。
ptr := new(int) → 分配一个 int(值为 0),返回 *int
ptr := new(string) → 分配一个空字符串 "",返回 *string
ptr := new([3]int) → 分配长度为 3 的数组(全 0),返回 若真需要指向 slice/map/channel 的指针(极少用),需显式取地址: 更常见、更清晰的方式是用取地址操作符 注意:make 只适用于 slice、map、channel,返回的是该类型的值(不是指针),但这些类型底层本身就是引用类型(包含指针字段)。
s := make([]int, 5) → 返回 []int(底层数组已分配,长度 5)m := make(map[string]int) → 返回 map[string]int(已初始化,可直接使用)c := make(chan int, 2) → 返回 chan int(带缓冲)ptr := &s,但这通常没必要,因为它们本身已可共享修改。如何正确获得指针:结合字面量或 new
&:
i := 42; ptr := &i → 明确、高效s := []int{1,2,3}; ptr := &s → 得到 *[]int(不常用)m := make(map[string]bool); ptr := &m → 得到 *map[string]bool(一般不需要)make 不能和 & 混写成 &make(...) —— 会编译错误,因为 make 返回的是不可寻址的临时值。对比总结:什么时候用哪个
new(T)(如 new(bytes.Buffer))make(new 对它们无效)&v,最直观安全&:u := &User{Name: "Alice"},比 new(User) 更灵活
# go
# golang
# String
# 构造函数
# 字符串
# 结构体
# int
# 指针
# map
# channel
# 的是
# 返回值
# 而非
# 也不
# 不需要
# 什么时候
# 已有
# 适用于
# 自定义
# 但这
相关文章:
建站之星北京办公室:智能建站系统与小程序生成方案解析
山东云建站价格为何差异显著?
香港服务器WordPress建站指南:SEO优化与高效部署策略
如何通过商城免费建站系统源码自定义网站主题?
如何选择服务器才能高效搭建专属网站?
深圳网站制作平台,深圳市做网站好的公司有哪些?
成都网站制作报价公司,成都工业用气开户费用?
建站之星安全性能如何?防护体系能否抵御黑客入侵?
如何获取免费开源的自助建站系统源码?
如何选择靠谱的建站公司加盟品牌?
如何通过虚拟主机快速完成网站搭建?
如何在建站之星网店版论坛获取技术支持?
建站之家VIP精选网站模板与SEO优化教程整合指南
建站之星安装路径如何正确选择及配置?
香港服务器网站卡顿?如何解决网络延迟与负载问题?
h5在线制作网站电脑版下载,h5网页制作软件?
建站之星如何实现五合一智能建站与营销推广?
建站之星安装步骤有哪些常见问题?
Thinkphp 中 distinct 的用法解析
如何通过wdcp面板快速创建网站?
简单实现Android文件上传
打鱼网站制作软件,波克捕鱼官方号怎么注册?
高防服务器租用首荐平台,企业级优惠套餐快速部署
建站之星如何取消后台验证码生成?
建站之星安装后界面空白如何解决?
如何将凡科建站内容保存为本地文件?
如何快速搭建高效可靠的建站解决方案?
建站主机服务器选型指南与性能优化方案解析
魔方云NAT建站如何实现端口转发?
如何用虚拟主机快速搭建网站?详细步骤解析
如何用搬瓦工VPS快速搭建个人网站?
教学论文网站制作软件有哪些,写论文用什么软件
?
建站之星客服服务时间及联系方式如何?
微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?
GML (Geography Markup Language)是什么,它如何用XML来表示地理空间信息?
建站之星伪静态规则如何设置?
如何选择高性价比服务器搭建个人网站?
如何用PHP工具快速搭建高效网站?
Python文件管理规范_工程实践说明【指导】
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
免费公司网站制作软件,如何申请免费主页空间做自己的网站?
个人网站制作流程图片大全,个人网站如何注销?
如何快速打造个性化非模板自助建站?
官网自助建站平台指南:在线制作、快速建站与模板选择全解析
Swift中循环语句中的转移语句 break 和 continue
如何使用Golang安装API文档生成工具_快速生成接口文档
常州企业建站如何选择最佳模板?
实现点击下箭头变上箭头来回切换的两种方法【推荐】
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
*请认真填写需求信息,我们会在24小时内与您取得联系。