module go

Go 语言结构体

结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。 定义结构体 结构体定义需要使用 type 和 struct 语句。struct 语句定义一个新的数据类型,结构体中有一个或多个成员。type 语句设定了结构体的名称 type struct_variable_type struct { m ......
语言 结构 Go

Go 语言指针

变量是一种使用方便的占位符,用于引用计算机内存地址。 Go 语言的取地址符是 &,放到一个变量前使用就会返回相应变量的内存地址。 package main import "fmt" func main() { var a int = 10 fmt.Printf("变量的地址: %x\n", &a ) ......
指针 语言 Go

svn add代码时,忽略node_modules

1.选中项目,右键,选择TortoiseSVN => Properties 2.点击New,选择Other 3.Property name:选择 svn:global-ignores 在Property value中输入:.idea *.iml .svn vcs.xml workspace.xml ......
node_modules modules 代码 node svn

Go 语言数组

声明数组 var balance [10] float32 初始化数组 var balance = [5]float32{1000.0, 2.0, 3.4, 7.0, 50.0} var balance = []float32{1000.0, 2.0, 3.4, 7.0, 50.0} balance ......
数组 语言 Go

ddddocr报AttributeError: module ‘PIL.Image‘ has no attribute ‘ANTIALIAS‘

我用的python版本为3.11.2,运行ddddocr时,报错 原因是在pillow的10.0.0版本中,ANTIALIAS方法被删除 可以把pillow的版本修改为之前的版本 pip uninstall Pillow pip install Pillow==9.5.0 ......

Go语言中切片的索引语法

以下是 Go 切片的更详细的索引和子切片操作: ### 基本的切片索引语法 切片索引的基本语法是 `s[start:end:capacity]`,其中: - `start`:开始索引,包含此索引位置的元素。 - `end`:结束索引,排除此索引位置的元素。 - `capacity`:切片的最大容量。 ......
语法 索引 语言

Go/C++/Java中的数组对比

数组是大多数编程语言中的基本数据结构。然而,不同的编程语言对数组的实现和语义有所不同。以下是 Go、C++ 和 Java 中数组的主要区别: ### 1. 基本性质 - **Go**: - 数组是值类型。赋值或将数组传递给函数时,内容会被复制。 - 数组的大小是其类型的一部分。因此,具有不同大小的数 ......
数组 Java Go

Go 语言变量作用域

局部变量 在函数体内声明的变量称之为局部变量,它们的作用域只在函数体内 package main import "fmt" func main() { /* 声明局部变量 */ var a, b, c int /* 初始化参数 */ a = 10 b = 20 c = a + b fmt.Print ......
变量 作用 语言 Go

Go中flag用法

`flag` 包实现了命令行标志解析。 使用 `flag.String()`, `Bool()`, `Int()` 等定义标志。 这声明了一个整数标志 `-n`,存储在指针 `nFlag` 中,类型为 `*int`: ```go import "flag" var nFlag = flag.Int( ......
flag

Go语言中的flag

Go 语言的 `flag` 包提供了一个简单的方式来定义和解析命令行参数。以下是如何使用 `flag` 包的基本步骤和示例: ### 1. 定义参数 使用 `flag` 包的相关函数来定义命令行参数。例如,你可以使用 `StringVar`、`IntVar` 和 `BoolVar` 来定义字符串、整 ......
语言 flag

常见设计模式的实现(Go和C++版)

在编程开发过程中,会碰到各类场景,如果每次都来一个问题解决一个问题会极大的降低开发效率,所以有必要将开发过程中遇到的场景加以总结。设计模式就是这样一套被反复验证、按照最佳实践的经验总结。GoF按照创建型**、**结构型和行为型三大类总结提出了23种设计模式,本文用Go和C++语言来实现和演示在编程开... ......
设计模式 常见 模式

学习go语言编程之错误处理

## error接口 Golang中有一个关于错误处理的标准模式,即:`error`接口。 ```golang type error interface { Error() string } ``` 对于大多数函数,如果要返回错误,大致上都可以定义为如下模式: ```golang func Foo( ......
语言编程 错误 语言

学习go语言编程之面向对象

## 类型系统 类型系统是指一个语言的类型体系结构,一个典型的类型系统通常包含如下基本内容: - 基础类型,如:byte、int、bool、float等 - 复合类型,如:数组、结构体、指针等 - 可以指向任意对象的类型(Any类型) - 值语义和引用语义 - 面向对象,即:所有具备面向对象特征(比 ......
语言编程 对象 语言

go语言环境要这样搭建才"省钱"

# go语言环境要这样搭建才省钱 [TOC] ## 本篇概要 搭建go语言环境,除了要搭建go语言的编译环境,还要搭建go语言的集成开发环境,为此需要选择go语言的集成开发环境的工具,这就是“工于善其事,必先利其器”,可以大大加快自己的开发进度。 ## 集成开发环境工具(ide) 这里我主要介绍从我 ......
quot 语言 环境

go 进阶训练营 微服务可用性(中)笔记

## 过载保护 ### 令牌桶算法 存放固定容量令牌的桶,按照固定速率往桶里添加令牌 https://pkg.go.dev/golang.org/x/time/rate ### 漏桶算法 作为计量工具(The Leaky Bucket Algorithm as a Meter)时,可以用于流量整形( ......
可用性 训练营 笔记 go

学习go语言编程之函数

## 函数定义 函数的基本组成:关键字func,函数名,参数列表,返回值,函数体,返回语句。 示例如下: ```golang func Add(a int, b int) (ret int, err error) { if a < 0 || b < 0 { err = errors.New("sho ......
语言编程 函数 语言

学习go语言编程之常量

## 什么在常量 在Golang中,常量是指在编译期就已知且不可改变的值。 ## 字面常量 在程序中硬编码的常量值被称为字面常量,如: ```golang -12 // 整数类型常量 3.1415926 // 浮点类型常量 3.2+12i // 复数类型常量 true // 布尔类型常量 "foo" ......
语言编程 常量 语言

学习go语言编程之数据类型

## 数据类型概述 Golang语言内置了如下基础数据类型: - 布尔类型:bool - 整型:int8,unit8,int16,uint16,int32,uint32,int64,uint64,int,uint,uintptr - 浮点类型:float32,float64 - 复数类型:compl ......
语言编程 语言 类型 数据

学习go语言编程之流程控制

Golang支持如下4种流程控制语句: 1. 条件语句:if,else和else if 2. 选择语句:switch,case和select 3. 循环语句:for,range 4. 跳转语句:goto ## 条件语句 示例代码: ```golang a := 3 if a = 0 && i = 4 ......
语言编程 语言

Go - What's the point of one-way channels in Go?

A channel can be made read-only to whoever receives it, while the sender still has a two-way channel to which they can write. For example: func F() <- ......
channels one-way point Go What

2023-08-12:用go语言写算法。实验室需要配制一种溶液,现在研究员面前有n种该物质的溶液, 每一种有无限多瓶,第i种的溶液体积为v[i],里面含有w[i]单位的该物质, 研究员每次可以选择一瓶

2023-08-12:用go语言写算法。实验室需要配制一种溶液,现在研究员面前有n种该物质的溶液, 每一种有无限多瓶,第i种的溶液体积为v[i],里面含有w[i]单位的该物质, 研究员每次可以选择一瓶溶液, 将其倒入另外一瓶(假设瓶子的容量无限),即可以看作将两个瓶子内的溶液合并, 此时合并的溶液体 ......
溶液 研究员 物质 算法 体积

The selected directory is not a validhome for Go SDK

安装IDE集成开发工具配置 IDE版本:goland-2020.2.3_Protable 错误:下边指定go的sdk错误解决 报“The selected directory is not a validhome for Go SDK”报错解决方法 出现这个错误的原因是 idea 的Go-plugi ......
directory validhome selected The SDK

Go数组转换,[]byte、[]unint16互相转换的方法封装,完整范例

需求:分别封装方法将[]byte转换成[]unint16,将[]unint16转换成 []byte byte相当于unint8 分析:长度为20的[]byte转换为长度为10的[]unint16, 他们之间的转换如 bytes := []byte{0, 1} 》[0*256+1]=1 注意:第奇数乘 ......
数组 范例 方法 unint byte

相同node_modules依赖包处理

## 同一根目录 1. 在根目录下新建package.json,并在根目录下安装依赖 2. 项目里直接运行npm即可 ## 不同目录 ### 使用软连接 以管理员身份运行CMD ``` mklink /d \node_modules # 例如 mklink /d D:\workspace\Proje ......
node_modules modules node

go1.21循环中的变量有变化

最近发了go1.21.0, 听说循环中的变量有变化,跑一下看看。 1.21.0默认还是和之前一样的。通过设置 ```go env -w GOEXPERIMENT=loopvar ``` 让新语义生效 ```go package main import ( "fmt" "sync/atomic" "t ......
变量 go1 go 21

Go语言工程实践——实现简易论坛服务端

### Go语言工程实践——实现简易论坛服务端 这篇文章是在我完成极简版抖音项目之后撰写的,相比刚听网课的时候的懵懵懂懂,书写过一些go代码后对这个作业的理解深入了很多。这个作业是实现一个服务端go程序,下面从零开始开发。 #### 准备工作 首先建立一个名为server_demo的空目录作为项目根 ......
简易 语言 工程 论坛

go-zero 是如何实现令牌桶限流的?

**原文链接:** [](https://mp.weixin.qq.com/s/--AdUcwOQyP6r5W8ziVwUg) 上一篇文章介绍了 [如何实现计数器限流?](https://mp.weixin.qq.com/s/CTemkZ2aKPCPTuQiDJri0Q)主要有两种实现方式,分别是固 ......
令牌 go-zero zero go

go项目实现mysql接入以及web api

本文为博主原创,转载请注明出处: 创建go项目,并在go项目中接入mysql,将mysql的配置项单独整理放到一个胚子和文件中,支持项目启动时,通过加载配置文件中的值,然后创建数据库连接。 之后使用net/http相关的库,创建路由,并在路由中通过不同的http方法,实现mysql连接的test数据 ......
项目 mysql api web

go kratos protobuf 接收动态JSON数据

# 前言 `google.protobuf.Struct` 是 `Google Protocol Buffers` 中的一种特殊类型,用于表示动态的键值对数据。它可以存储任意类型的数据,并提供了方便的方法来访问和操作这些数据。 `Struct` 类型通常用于在不事先知道数据结构的情况下传递和处理配置 ......
protobuf 动态 数据 kratos JSON

go-zero 是如何实现计数器限流的?

**原文链接:** [如何实现计数器限流?](https://mp.weixin.qq.com/s/CTemkZ2aKPCPTuQiDJri0Q) 上一篇文章 [go-zero 是如何做路由管理的?](https://mp.weixin.qq.com/s/uTJ1En-BXiLvH45xx0eFsA ......
计数器 go-zero zero go