linux 系统最简单的安装 go 开发环境步骤
2024-04-24
345
465
1. 官网下载放在 /godev 目录https://golang.google.cn/dl/或wget https://dl.google.com/go/go1.22.2.linux-amd64.tar.gz或curl -O https://dl.google.com/go/go1.22.2.linux-386.tar.gz2. 解压tar -xvf go1.22.2.linux-amd64.t
go 生成密码 php的 password_hash go实现
2023-09-21
1846
2492
packagemain
import(
"fmt"
"golang.org/x/crypto/bcrypt"
)
funcmain(){
hashedPassword:=passwordHash("123456")
fmt.Println(hashedPassword)
hashedPassword=
go 空接口类型的变量的使用
2023-07-17
1787
2412
// interface{} 在 Go 中是一个特殊的类型,表示任何类型,类似于 C# 中的 object 类型或 Java 中的 Object 类型。// 它可以接收任何类型的值,但如果我们需要使用其原始类型的值,我们需要进行类型断言。packagemain
import(
"fmt"
)
funcmain(){
//定义一个空接口类型的变量可以给空接口
go 递归读取目录中所有文件和目录 读取当前目录的文件和目录
2023-06-30
1074
1449
递归读取目录中所有文件和目录//ReadDirAll递归读取目录中所有文件和目录
funcReadDirAll(pathstring)([]string,error){
varfiles[]string
err:=filepath.Walk(path,func(pathstring,infoos.FileInfo,errerror)error{
iferr!=nil{
re
go 递归读取目录,并生成树形结构的数据
2023-06-30
692
934
go 递归读取目录,并生成树形结构的数据//读取目录中的所有文件,如果是目录则递归读取,生成结构化的树形struct
packagemain
import(
"encoding/json"
"fmt"
"os"
"path/filepath"
)
//TreeNode文件的树形结构体
ty
Lazarus IDE 的 Panel 组件 去除底部和右侧的边框标线
2023-06-22
331
446
Lazarus IDE 的 Panel 组件 去除底部和右侧的边框标线 把BevelOuter 属性改为 byNone,改为byNone看不到组件的边界,可以设置背景图Color 属性。
使用 govcl 开发桌面UI 在 Lazarus IDE 编译中报错
2023-06-22
608
820
使用 govcl 开发桌面UI 在 Lazarus IDE 编译中报错go build -i -buildmode=exe -ldflags="-H windowsgui" -tags="tempdll" -o "project1.exe"flag provided but not defined: -iusage: go build [
go WaitGroup 的使用方法
2023-03-23
365
492
在 Go 中,sync 包下的 WaitGroup 能有助于我们控制协程之间的同步。当需要等待一组协程都执行完各自任务后,才能继续后续逻辑。这种场景,就非常适合使用它。WaitGroup 提供三个 API。Add(delta int) 函数提供了 WaitGroup 的任务计数,delta 的值可以为正也可以为负,通常在添加任务时使用。Done() 函数其实就是 Add(-1),在任务完成时调用。
Go 中 实现基于 channel 的简单 生产者 消费者模型
2023-03-23
547
738
Go 中 实现基于 channel 的简单 生产者 消费者模型packagemain
import(
"fmt"
"strconv"
"sync"
)
//生产者
funcproducer(chchan<-string,wg*sync.WaitGroup){
deferwg.Done()
fo