golang
已收录文章:334篇
-
在Go语言中,值类型参数传递是按值进行的,函数接收的是变量副本,因此无法直接修改原值;要修改原始值必须使用指针。例如,modifyValue(xint)中对x的修改不影响原变量a,而modifyValuePtr(x*int)通过传入&a并解引用*x=100可成功修改原值。结构体作为值类型同样适用此规则,如updatePerson(p*Person)可修改person的字段。一般原则是:需修改原数据、结构体较大或需避免复制开销时使用指针,仅读取小数据时可传值。掌握传值与传指针的区别是编写正确Go函数385 收藏
-
使用http.Header可自定义请求头,通过req.Header.Set设置User-Agent、Authorization等字段,再用http.Client发送请求。384 收藏
-
答案:通过Termux在手机上安装Go环境,可实现移动开发。先安装Termux并更新系统,使用pkginstallgolang安装Go,验证版本后配置项目目录,编写HelloWorld程序并运行。还可构建HTTP服务,在手机浏览器访问测试,结合termux-wake-lock保持运行,适合学习与轻量开发。384 收藏
-
使用Benchmark和pprof优化Go复杂数据结构性能。首先通过Benchmark测量操作耗时与内存分配,对比不同实现(如map与切片、sync.Map与带锁map)的性能差异;再利用pprof分析CPU与内存瓶颈,定位高耗时函数;结合b.RunParallel模拟并发场景,评估锁争用与GC压力;最后基于真实负载设计混合读写、数据分布及并发访问测试,确保结果贴近生产环境。定期回归测试可防止性能退化。384 收藏
-
gotest-v可显示测试执行详情,如用例运行状态与耗时,但无-vv参数;通过-v结合-cover、-race等参数可增强输出,t.Log配合-v还能输出调试日志,满足多数调试需求。383 收藏
-
答案是搭建Golang本地测试环境需先安装Go并验证版本与环境变量,启用gomod管理依赖,合理组织项目结构,在同包下编写\_test.go测试文件,使用gotest运行测试,结合-v、-coverprofile等参数查看结果,推荐使用VSCode插件调试,引入静态检查与mock提升质量。383 收藏