go

go的封装、继承与多态的使用

目录一、封装1.1 公有封装1.2 私有封装1.2.1 工厂函数解析1.2.2 &与*指针使用描述1.3 深度封装二、继承与多态2.1 继承与多态案例2.1.1 继承代码分析2.1.2 结构体实例化2.1.3 多态代码分析 一、封装 ​ 在Go语言中,封装是一种将数据和操作数据的方法组织在一起的概念 ......

自己编写一个 常用正则表达式的go库

先基于以下 var ( fileNamePattern = "^[^+-./\t\b@#$%*()\\[\\]][^/\t\b@#$%*()\\[\\]]{1,254}$" fileRegex = regexp.MustCompile(fileNamePattern) ) func main() { ......
正则 表达式 常用

Mysql数据实时增量同步工具之go-mysql-transfer

数据实时增量同步工具之go-mysql-transfer:https://blog.csdn.net/weixin_42526326/article/details/121302961 Elasticsearch笔记之安装、配置、Kibana基础:https://blog.csdn.net/weix ......

Go 语言 Excel 表格转成 Struct

- 最近用go语言的Excelize包实现xlsx读取发现一点问题。当xlsx末尾列数据为空时(下图中红框部分),如果存入到像[]string切片或者数组内,Go语言数组这种会自动忽略右边的空值,会出现行的长度不一致(比如第14行列数为4,15行列数为3,第18行直接没数据)。这比python的pa ......
表格 语言 Struct Excel Go

Go - error: panic: runtime error: invalid memory address or nil pointer dereference

Then looking at this code: res, err := client.Do(req) defer res.Body.Close() if err != nil { return nil, err } I'm guessing that err is not nil. You'r ......
error dereference address invalid runtime

go defer

//defer 作用域在当前函数和方法返回之前被调用 // return 比 defer 更先执行 package main import "fmt" func deferFunc() int { fmt.Println("defer func done") return 0 } func retu ......
defer go

go实现白名单黑名单

Go语言实现接口IP限流,黑名单&白名单的实例,都可用! 原创 学习与分享 Go语言圈 2023-07-18 08:30 发表于广东 MySQL大牛 带你全面剖析与系统梳理数据库(mysql等)知识分享,总结数据库技巧和方法,提升你的技术技能。 45篇原创内容 公众号 Goland 激活码&个人账号 ......
黑名单 名单

go服务get请求中携带分号(;)时报错,获取不到参数的问题

前言 我们在写get方式的api请求时,有时候会用这样的一种方式携带参数:http://ip:port/a/b?query=key:1;value:2&other=xxx,这里我们注意到 query 一个字段其实是携带了等子字段的,一个是 key, 一个是 value;这在go 1.17版本之前是没 ......
分号 时报 参数 问题 get

64道Go机制高频题整理(附答案背诵版)

如何解决Golang uint 类型溢出问题? Golang的uint类型溢出问题通常会在大量运算中发生,特别是在涉及到大量循环或者大数运算时。当uint类型的值超过其最大值时,它会发生溢出,然后从该类型的最小值开始循环。为了解决这个问题,我们可以采取以下几种方法: 使用更大的数据类型:例如,如果你 ......
机制 答案

65道Go基础高频题整理(附答案背诵)

说明一下Golang 中 make 和 new 的区别? 好的,关于 make 和 new 在 Go 语言中的区别,我来解释一下。 new 函数的作用: new(T) 函数会为 T 类型的新项分配零值内存,并返回其地址,即一个 *T 类型的值(指针)。这种方法适用于各种类型,包括基本类型如 int、 ......
答案 基础

最后一次迭代——城院GO导航

1. 程序运行截图展示: 2. 程序开发分工详情 葛方杰:负责地点汇总界面的前端基本界面设计以及上导航栏和侧导航栏的布局以及简单的数据绑定,以及做了自定义组件卡,用瀑布流的形式封装自定义组件卡来展现地点卡片,后把工作转移至邓梅。然后做了微信小程序的分包工作,并完善了个人页面的前端以及加入了系统管理的 ......

go gin 基于令牌桶实现的接口限流

令牌桶实现接口限流 简单有效. 但是不一定对得上我现在需要使用的业务. 新建 main.go package main import ( "github.com/gin-gonic/gin" "sync" "time" ) // 令牌桶demo func main() { r := gin.Defa ......
令牌 接口 gin go

go model的使用 windows下

安装golang后,配置GOROOT环境变量,然后在PATH环境变量下加入%GOROOT%\bin 创建一个目录,使用如下命令 go mod init 项目名 // 完成初始化 go mod vendor // 自动创建vendor目录 go mod tidy // 整理依赖 go get xxx ......
windows model go

go gorm 软删除和查询

软删除 如果您的模型包含了一个 gorm.deletedat 字段(gorm.Model 已经包含了该字段),它将自动获得软删除的能力! 拥有软删除能力的模型调用 Delete 时,记录不会从数据库中被真正删除。但 GORM 会将 DeletedAt 置为当前时间, 并且你不能再通过普通的查询方法找 ......
gorm go

go--for 循环、continue、break、goto

for 循环 go 里面的循环只有一个 for 循环 for 循环有下面四种方式的写法 第一种方式,for 后面什么都不写 死循环,在代码中,如果一个 for 循环没有结束条件,则代码会陷入死循环 package main import ( "fmt" "time" ) func main() { ......
continue break goto for go

AWS - Sample Go code to use secrets

// Use this code snippet in your app. // If you need more information about configurations or implementing the sample code, visit the AWS docs: // htt ......
secrets Sample code AWS use

用go如何实现接口抽象

当涉及到连接不同类型的数据库时,可以用常见的方式去连接对应的数据库,也可以使用接口抽象的方式使代码更具灵活性和可扩展性,更显优雅。 非接口抽象方式: 如果涉及到多种数据库时,同样的代码显得非常臃肿。 package main import "fmt" // 直接定义 MySQL 连接和插入函数 fu ......
接口

使用Go实现一个百行聊天服务器

前段时间, redis作者不是整了个c语言版本的聊天服务器嘛, 地址, 代码量拢共不过百行. 于是, 心血来潮下, 我也整了个Go语言版本. 简单来说就是实现了一个聊天室的功能. 将所有注释空行都去掉, 刚好100行实现. 废话不多说, 先上代码: package main import ( "fm ......
服务器

2023-12-16:用go语言,给定整数数组arr,求删除任一元素后, 新数组中长度为k的子数组累加和的最大值。 来自字节。

2023-12-16:用go语言,给定整数数组arr,求删除任一元素后, 新数组中长度为k的子数组累加和的最大值。 来自字节。 答案2023-12-16: 来自左程云。 灵捷3.5 大体步骤如下: 算法 maxSum1 分析: 1.计算输入数组 arr 的长度 n。 2.如果 n <= k,则返回 ......
数组 最大值 整数 字节 长度

Kubernetes: client-go 源码剖析(二)

上接 Kubernetes: client-go 源码剖析(一) 2.3 运行 informer 运行 informer 将 Reflector,informer 和 indexer 组件关联以实现 informer 流程图的流程。 2.3.1 Reflector List&Watch 运行 inf ......
Kubernetes client-go 源码 client go

Kubernetes: client-go 源码剖析(一)

0. 前言 在看 kube-scheduler 组件的过程中遇到了 kube-scheduler 对于 client-go 的调用,泛泛的理解调用过程总有种隔靴搔痒的感觉,于是调转头先把 client-go 理清楚在回来看 kube-scheduler。 为什么要看 client-go,并且要深入到 ......
Kubernetes client-go 源码 client go

go-zero开发入门之gateway深入研究1

创建一个 gateway 示例: // main.go package main import ( "flag" "fmt" "gateway/middleware" "github.com/zeromicro/go-zero/core/conf" "github.com/zeromicro/go- ......
go-zero gateway zero go

为什么 Go 和 Rust 语言都舍弃了继承?

为什么go和rust语言都舍弃了继承? ❎ 舍弃了 Class ✅ 舍弃或弱化子类型 类的继承是一段儿弯路 OO 发明了继承,然后发现真正有意义的是 interface 的组合(更准确的说,是 Product type of interfaces or abstract classes),语义上相当 ......
语言 Rust Go

Go语言学习之-带分割符的文件转excel-PLUS版

package main import ( "bufio" "errors" "flag" "fmt" "github.com/axgle/mahonia" "github.com/xuri/excelize/v2" "log" "os" "path" "path/filepath" "sort" ......
语言学 excel-PLUS 语言 文件 excel

go-zero目录结构和说明

. ├── code-of-conduct.md 行为准则 ├── CONTRIBUTING.md 贡献指南 ├── core 框架的核心组件 │ ├── bloom 布隆过滤器,用于检测一个元素是否在一个集合中 │ ├── breaker 熔断器,用于防止过多的请求导致系统崩溃 │ ├── cmd ......
go-zero 结构 目录 zero go

go无缓冲通道,两个通道阻塞行为不一致的疑问

先贴代码 代码1 func main() { fmt.Println(" start chantest3") chanA := make(chan int) chanC := make(chan string) go chanHandleA(chanA) fmt.Println(" before c ......
通道 疑问 行为 两个

go上下文神器

10 Context:你必须掌握的多线程并发控制神器 原创 码梦之旅 码梦之旅 2023-12-02 23:11 发表于广东 在上一节课中我留了一个作业,也就是让你自己练习使用 sync.Map,相信你已经做出来了。现在我为你讲解 sync.Map 的方法。 Store:存储一对 key-value ......
上下文 神器 上下

code-server go环境

目录docker-compose.ymlDockerfilegvm管理go版本 docker-compose.yml version: '3' services: code-server: build: context: ./code-server/ dockerfile: Dockerfile i ......
code-server 环境 server code

Go语言编程教程4-枚举

课程要点 了解Golang中的枚举 自定义枚举值 跳过某个枚举值 枚举的常用惯例 了解fmt.Stringer接口 Golang中的枚举 在Golang中并没有像其他语言一样,拥有类似于enum的常规枚举类型,而是通过使用一组常量来实现类似枚举的功能。 如下所示,我们定义了三个常量来表示状态语义的枚 ......
语言编程 语言 教程

Go语言编程教程1-开发环境搭建

课程要点 了解云开发环境 下载安装Golang 配置Golang常用环境变量 安装Golang开发相关的IDE 云开发环境 如果你想要快速参与开发与学习,可以直接使用云开发环境, 而不用手动进行本章节后续的配置。 以下是常见的云开发环境,直接点击对应图标就可以在对应的云开发环境中打开本项目的示例代码 ......
语言编程 语言 环境 教程
共2214篇  :5/74页 首页上一页5下一页尾页