程序开发 · 2023年11月16日

创建结构时复合文字类型无效

当前位置: > > > > 创建结构时复合文字类型无效

来源:stackoverflow
2024-04-23 22:57:31
0浏览
收藏

编程并不是一个机械性的工作,而是需要有思考,有创新的工作,语法是固定的,但解决问题的思路则是依靠人的思维,这就需要我们坚持学习和更新自己的知识。今天就整理分享《创建结构时复合文字类型无效》,文章讲解的知识点主要包括,如果你对Golang方面的知识点感兴趣,就不要错过,在这可以对大家的知识积累有所帮助,助力开发能力的提升。

问题内容

我对 go 中的这个不太熟悉

type pageoffset int
type page int

如何使用 pageoffsetpage 创建结构体实例?

type getparams struct {
    page *page 
    pageoffset *pageoffset 
}

我尝试过类似的方法,但收到此错误

invalid composite literal type


p := GetParams{}
p.Page = &Page{1}
p.PageOffset = &PageOffset{10}

解决方案

由于 page 和 pageoffset 不是结构体,而是具有底层 int 类型的新类型定义,因此您应该像直接使用 int 一样使用它

p := Page(1)
pO := PageOffset(2)
GetParams{
  Page:       &p,
  PageOffset: &pO,
}

今天关于《创建结构时复合文字类型无效》的内容介绍就到此结束,如果有什么疑问或者建议,可以在公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!