当前位置: 首页 > news >正文

golang学习-结构体

1、定义

使用type 和struct 关键字来定义结构体,是值类型

格式如下:

type 类型名 struct {

        字段名 类型

        字段名 类型

        ...

}

2、实例化

1、var 结构体实例 结构体类型    var p1 Person  

2、使用new关键字   var p2 = new(Person)

3、使用&对结构体进行取地址操作 p3:=&Person{}

第二种和第三种返回的是指针类型

4、键值对初始化

p4:= Person {

        name :"李四",

}

5、&取内存地址

p5:=&Person{

        name :"李四",

}

6、简写 不指名key 直接写value

p6:=&Person{

        "张三

"

}

 结构体首字母大写表示结构体共有,在其他包里可以使用。首字母小写表示结构体私有,只能在这个包里使用。

在golang中 支持对结构体指针直接使用.来访问结构体的成员   p2.name = "张三",其在底层是(*p2).name="张三"

3、结构体的匿名字段

结构体允许成员字段声明时没有字段名只有类型,这种没有名字的字段叫匿名字段。匿名字段默认采用类型名作为字段名,因此类型不能重复。

type Person {

        string

        int

}

4、结构体嵌套

当访问结构体成员时会先在结构体中查找该字段,找不到再去匿名结构体中查找、

type User struct {Username stringAge      intAddress  Address
}
type Address struct {Name  stringphone string
}func main() {var u = new(User)u.Username = "张三"u.Age = 20u.Address.Name = "不会"u.Address.phone = "1233"// fmt.Printf("%#v", u)fmt.Println(&u.Address)
}

 golang中使用结构体嵌套来实现继承。

相关文章:

golang学习-结构体

1、定义 使用type 和struct 关键字来定义结构体,是值类型 格式如下: type 类型名 struct { 字段名 类型 字段名 类型 ... } 2、实例化 1、var 结构体实例 结构体类型 var p1 Person 2、使用new关键字 var p2 new(Person) 3、使用&对结构体…...

Python:enumerate() 函数

enumerate() 函数用于同时遍历索引和元素,常用于循环中。这个函数返回一个包含索引和元素的元组,可以通过解包的方式获取它们。 使用方法: enumerate(iterable, start0). iterable: 要遍历的可迭代对象。start: 索引起始值,默认…...

FPGA 移位运算与乘法

题目: 已知d为一个8位数,请在每个时钟周期分别输出该数乘1/3/7/8,并输出一个信号通知此时刻输入的d有效(d给出的信号的上升沿表示写入有效) 由题意可知: 复位信号高有效,低复位;在inpu_grant上升…...

网络安全B模块(笔记详解)- MYSQL信息收集

MYSQL信息收集 1.通过渗透机场景Kali中的渗透测试工具对服务器场景MySQL03进行服务信息扫描渗透测试(使用工具Nmap,使用必须要使用的参数),并将该操作显示结果中数据库版本信息作为Flag提交; Flag:MySQL 5.5.12 2.通过渗透机场景Kali中的渗透测试工具对服务器场景MySQL0…...

从JavaScript的角度上讲解一下xml

- XML(可扩展标记语言) XML(可扩展标记语言)是一种被设计用于存储和传输结构化数据的标记语言。它与HTML相似,但XML并没有预定义的标签,可以自定义标签及其属性。从JavaScript的角度来看,XML可以…...

Pandas实战100例 | 案例 13: 数据分类 - 使用 `cut` 对数值进行分箱

案例 13: 数据分类 - 使用 cut 对数值进行分箱 知识点讲解 在数据分析中,将连续的数值数据分类成不同的区间(或“分箱”)是一种常见的做法。Pandas 提供了 cut 函数,它可以根据你指定的分箱边界将数值数据分配到不同的类别中。 …...

python统计分析——操作案例(模拟抽样)

参考资料:用python动手学统计学 import numpy as np import pandas as pd from matplotlib import pyplot as plt import seaborn as snsdata_setpd.read_csv(r"C:\python统计学\3-4-1-fish_length_100000.csv")[length] #此处将文件路径改为自己的路…...

部署Tomcat及其负载均衡

Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。一般来说,Tomcat虽然和Apache或者Nginx这些Web服务器一样&#xf…...

C++ 类、结构体

C 类、结构体 类可以将变量、数组和函数完美地打包在一起。 类与结构体 类的定义&#xff1a; class Person {private:int age,height;double money;string books[100];public:string name;void say(){cout<<"Im"<<name<<endl;}int get_age(){…...

数据结构(三)堆和哈希表

目录 哈希表和堆什么是哈希表 &#xff1f;什么是堆 &#xff1f;什么是图 &#xff1f;案例一&#xff1a;使用python实现最小堆案例二 &#xff1a; 如何用Python通过哈希表的方式完成商品库存管理闯关题 &#xff08;包含案例三&#xff1a;python实现哈希表&#xff09; 本…...

李宏毅LLM——ChatGPT原理剖析

文章目录 Chat-GPT引言关键技术——预训练研究问题玩文字冒险游戏 ChatGPT原理剖析 Chat-GPT引言 直观感受&#xff1a;结果有模有样、每次输出结果都不同、可以追问、幻想出的答案误解&#xff1a;罐头回答、答案是网络搜索的结果真正做的事&#xff1a;文字接龙&#xff0c;…...

让Windows上vscode的C语言scanf函数可以读取中文字符

windows的默认字符集保存为GBK不要修改 区域设置–时钟和区域–区域–管理–更系统区域设置–&#xff08;不要勾选&#xff09;使用UTF-8。 查看验证当前字符集&#xff1a; cmdchcp 活动代码页: 936936就是简体中文GBK vscode的setting.json文件添加如下代码 点击左下角…...

Linux命令(3)

一. tr 对字符进行处理&#xff1a; tr 命令用于字符转换、替换和删除&#xff0c;主要用于删除文件中的控制符或进行字符串转换等。 将a转换成1 将小写字母转换成大写 压缩: tr -s 将a压缩成一个a 将空格压缩成一个 删除&#xff1a; tr -d 补集: 用字符串中的字符集的补…...

安卓MediaRecorder(3)音频采集编码写入详细源码分析

文章目录 前言音频采集音频初始化AudioRecord 分析AudioSource 采集到音频 音频编码音频编码后数据处理MPEG4Writer写入音频编码后数据到文件MPEG4Writer::Track 取编码后的音频编数据结语 本文首发地址 https://blog.csdn.net/CSqingchen/article/details/134896808 最新更新地…...

2024年网络安全竞赛—网络安全事件分析应急响应解析(包含FLAG)

网络安全事件分析应急响应 目录 网络安全事件分析应急响应 解析如下:...

FineBI实战项目一(22):各省份订单个数及订单总额分析开发

点击新建组件&#xff0c;创建各省份订单个数及订单总额组件。 选择自定义图表&#xff0c;将province拖拽到横轴&#xff0c;将cnt和total拖拽到纵轴。 调节纵轴的为指标并列。 修改横轴和纵轴的标题。 修改柱状图样式&#xff1a; 将组件拖拽到仪表板。 结果如下&#xff1a;…...

2024.1.16 调用tinyspline样条曲线拟合库时报 stack smashing detected,CMakeLists.txt中屏蔽该异常

在函数中调用第三方库api拟合样条曲线&#xff0c;函数中一切正常&#xff0c;可以打印所有数组变量&#xff0c;重复执行该函数&#xff0c;某一次函数return时报 stack smashing deteced &#xff08;unknown&#xff09; &#xff0c;原因可能是第三方库内部的函数有栈溢出风…...

Leetcode202快乐数(java实现)

今天分享的题目是快乐数&#xff1a; 快乐数的定义如下&#xff1a; 快乐数&#xff08;Happy Number&#xff09;是指一个正整数&#xff0c;将其替换为各个位上数字的平方和&#xff0c;重复这个过程直到最后得到的结果为1&#xff0c;或者无限循环但不包含1。如果最终结果为…...

50天精通Golang(第13天)

反射reflect 一、引入 先看官方Doc中Rob Pike给出的关于反射的定义&#xff1a; Reflection in computing is the ability of a program to examine its own structure, particularly through types; it’s a form of metaprogramming. It’s also a great source of confus…...

大数据 - Doris系列《三》- 数据表设计之表的基本概念

目录 &#x1f436;3.1 字段类型 &#x1f436;3.2 表的基本概念 3.2.1 Row & Column 3.2.2 分区与分桶 &#x1f959;3.2.2.1 Partition 1. Range 分区 2. List 分区 进阶&#xff1a;复合分区与单分区的选择 3.2.3 PROPERTIES &#x1f959;3.2.3.1 分片副本数 &#x1f…...

UE5.4.4视频不导入实战:绕过Content Browser直连文件系统

1. 为什么在UE5.4.4里“不导入视频”反而成了刚需&#xff1f;在UE5.4.4项目现场&#xff0c;我最近连续被三个不同团队问到同一个问题&#xff1a;“能不能别把视频拖进Content Browser&#xff1f;”——不是他们不会操作&#xff0c;而是一拖进去就出事。美术同事导了个2.7G…...

HTTPS抓包失败原因与Burp CA证书信任配置全指南

1. 为什么HTTPS抓包总卡在“连接失败”&#xff1f;——这不是网络问题&#xff0c;是证书信任链没打通你打开Burp Suite&#xff0c;配置好代理&#xff0c;浏览器也设成127.0.0.1:8080&#xff0c;一访问https://example.com&#xff0c;页面直接报“您的连接不是私密连接”&…...

为小型创业团队搭建经济可控的大模型应用开发平台

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 为小型创业团队搭建经济可控的大模型应用开发平台 对于资源有限的创业团队而言&#xff0c;在拥抱大模型技术的同时&#xff0c;必…...

Play Integrity API Checker:快速检测Android设备安全性的完整指南

Play Integrity API Checker&#xff1a;快速检测Android设备安全性的完整指南 【免费下载链接】play-integrity-checker-app Get info about your Device Integrity through the Play Intergrity API 项目地址: https://gitcode.com/gh_mirrors/pl/play-integrity-checker-a…...

3个关键策略:安全使用ViVeTool-GUI控制Windows隐藏功能

3个关键策略&#xff1a;安全使用ViVeTool-GUI控制Windows隐藏功能 【免费下载链接】ViVeTool-GUI Windows Feature Control GUI based on ViVe / ViVeTool 项目地址: https://gitcode.com/gh_mirrors/vi/ViVeTool-GUI ViVeTool-GUI是一款基于ViVe/ViVeTool的Windows功能…...

2026年转型风口:理发店转战植物染发,能占据市场前10%吗?

2026年&#xff0c;理发店转型的风口已经悄然来临。据数据显示&#xff0c;植物染发和养护市场增速保持在15%以上&#xff0c;而白发脱发人群的比例不断增大&#xff0c;这无疑给众多理发店提供了巨大的转型机会。本文将通过具体的数据、案例和观点&#xff0c;探讨理发店转型植…...

CharacterAI Python API终极指南:如何快速构建AI对话机器人

CharacterAI Python API终极指南&#xff1a;如何快速构建AI对话机器人 【免费下载链接】CharacterAI Unofficial Python API for character.ai 项目地址: https://gitcode.com/gh_mirrors/ch/CharacterAI 你是否想在自己的Python应用中集成CharacterAI的强大对话功能&a…...

从零到一:打造属于你的智能语音助手完整方案

从零到一&#xff1a;打造属于你的智能语音助手完整方案 【免费下载链接】xiaozhi-esp32-server 本项目为xiaozhi-esp32提供后端服务&#xff0c;帮助您快速搭建ESP32设备控制服务器。Backend service for xiaozhi-esp32, helps you quickly build an ESP32 device control ser…...

百度网盘Mac版终极加速教程:三步告别限速,免费享受SVIP极速下载

百度网盘Mac版终极加速教程&#xff1a;三步告别限速&#xff0c;免费享受SVIP极速下载 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 你是否曾经面对…...

Path of Building PoE2:终极流放之路2角色构建指南与实战教程

Path of Building PoE2&#xff1a;终极流放之路2角色构建指南与实战教程 【免费下载链接】PathOfBuilding-PoE2 项目地址: https://gitcode.com/GitHub_Trending/pa/PathOfBuilding-PoE2 想要在《流放之路2》中打造完美角色吗&#xff1f;Path of Building PoE2&#…...