
php小编西瓜在本文中将探讨一个关于Golang语言的问题:是否存在结构的扩展运算符。Golang作为一种现代化的编程语言,拥有许多强大的特性和功能,但是在一些特定的场景下,开发人员可能会遇到需要对结构进行扩展的需求。本文将详细介绍Golang中结构扩展的相关知识,并给出解决方案。如果你对Golang的结构扩展运算符感兴趣,那么请继续阅读本文。
具有以下结构,其中 postinput 是 createpost 函数的参数。
type postinput struct {
title string
content string
}
type postinputwithtime struct {
title string
content string
createdat time
updatedat time
}
但不希望 createdat 和 updatedat 暴露给用户,所以我将其添加到函数中,如下所示。
func createpost(input postinput) {
updatedinput = postinputwithtime{
title: input.title
content: input.content
createdat: time.now()
updatedat: time.now()
}
db.insertone(updatedinput)
}
它工作正常,但很好奇是否有更优雅的方法来做到这一点?我知道可以将结构嵌入到另一个结构上,但不能嵌入到根层上(如 javascript 扩展运算符)。
立即学习“go语言免费学习笔记(深入)”;
LOGA 即名为 "Limit Of Good AsThis",是如斯开发的多语言、多平台建站系统。取简洁,追求效率之意。本系统基于 PHP + MySQL 平台开发,结构简洁,运行速度极快。 LOGA功能特点: [PFA 内核]简洁、优雅的高质量代码具有极高的通用性和扩展性。 [多语言支持]UTF-8 编码,语言侦测,多语言支持,方便开发国际网站。 [多平台支持]
72
// something like this
type PostInputWithTime struct {
...PostInput
CreatedAt
UpdatedAt
}是否有像 javascript 扩展运算符 [...] 一样的 go[...] 结构 [...] 扩展运算符?
没有。
(您必须使用嵌入、复制值或实现一些基于反射的魔法,但不,没有传播。)
以上就是golang 结构是否有扩展运算符的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号