广告
返回顶部
首页 > 资讯 > 后端开发 > GO >Golang中struct{}和struct{}{}的区别解析
  • 849
分享到

Golang中struct{}和struct{}{}的区别解析

go struct{}和struct{}{}的区别go struct 2023-03-19 17:03:36 849人浏览 薄情痞子
摘要

目录struct {}struct {} {}使用场景举例首先说下golang中的结构体,结构体是由一系列具有相同类型或不同类型的数据构成的数据集合,Golang中使用关键字stru

首先说下golang中的结构体,结构体是由一系列具有相同类型或不同类型的数据构成的数据集合Golang中使用关键字struct来创建一个结构体,语法如下:

typeStudentstruct { 
  Name string 
}

下面定义一个Student结构体,例如:

typeStudentstruct {
 		name  string
}

然后声明一个Student类型的变量并赋值

var stu Student
stu.name = "小明"

声明一个struct类型变量并赋值还有一种方式是使用匿名struct,代码非常简洁:

stu := struct {
    name string
}{
    "小明",
}

还可以使用匿名struct声明一个变量但不赋值,例如:

stu := struct {
 
}{
    
}

把空行和空格去掉后就是struct {} {},所以到此就可以看出struct {}和struct {} {}的区别了。

struct {}

struct {}和struct { name string }一样是结构体类型, 只是没有任何元素。struct {}的特点是大小为0,不占用任何内存。

struct {} {}

struct {} {}一个struct {}类型的值,该值也是空。

使用场景举例

比如使用map类型构造集合,可以使用这样一个类型的map:map[string]struct{},使用struct{}类型的值来节省空间。

package main
 
import"fmt"funcmain() {
	zoo := make(map[string]struct{})
	zoo["monkey"] = struct{}{}
	zoo["tiger"] = struct{}{}
	_, ok := zoo["monkey"]
	fmt.Println("Is monkey in the zoo?", ok)
	_, ok = zoo["cat"]
	fmt.Println("Is cat in the zoo?", ok)
}

运行程序,输出如下内容:

Ismonkeyinthezoo?trueIscatinthezoo?false

到此这篇关于Golang中struct{}和struct{}{}的区别解析的文章就介绍到这了,更多相关go struct{}和struct{}{}的区别内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

您可能感兴趣的文档:

--结束END--

本文标题: Golang中struct{}和struct{}{}的区别解析

本文链接: https://www.lsjlt.com/news/200377.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作