Go问答技术文章

  • 可以无限期询问 time.After() 吗?
    可以无限期询问 time.After() 吗?
    有没有办法向time.after()询问无限长的时间?动机:我有一个服务,调用者可以向其请求消息,并且可以选择超时。执行此操作的明显方法是:funcservice(timeout*time.Duration)SomeType{vartimeout_valuetime.Durationiftimeout!=nil{timeout_value=*timeout}else{timeout_value=tim
    Golang · Go问答   |  2年前  |   154浏览 收藏
  • 为什么应该在公共函数中调用私有函数,而不是直接调用实现代码?
    为什么应该在公共函数中调用私有函数,而不是直接调用实现代码?
    我在golangsrc中看到很多这样的代码:funcopen(pathstring)(*plugin,error){returnopen(path)}funcopen(){//etc}从公共函数调用私有函数。为什么不只是:funcOpen(pathstring)(*Plugin,error){//codeofopenhere}参考:https://golang.org/src/plugin/plugin.go?s
    Golang · Go问答   |  2年前  |   311浏览 收藏
  • Visual Studio安装Go工具失败
    Visual Studio安装Go工具失败
    我尝试通过wsl使用vscode(v1.38.1),当我启动任何go工具安装或命令go:install/update工具时,我遇到权限问题。我尝试重新安装wsl和vscode并得到相同的结果。通过嵌入式终端手动输入goget-vgithub.com/mdempsky/gocode工作正常。vscode输出控制台显示如下:installing2toolsat/home/username/go/bingocodegopkgsinstal
    Golang · Go问答   |  2年前  |   499浏览 收藏
  • 将结构体字段转换为 XML 标签和值的方法
    将结构体字段转换为 XML 标签和值的方法
    我有一些结构:typeTokensstruct{}typeTokenstruct{TypestringValuestring}IneedtogetXMLfileastheoutput:xyz其中关键字、标识符或符号是字段类型的值,x,y,x是字段值的值具体来说,我不需要将每个标记包装到标签中。令牌有多种类型,但对于某些值只有一种类型。标准库encoding/xml没有为此提供现成的解决方案。似乎只提供了使用字段名作为
    Golang · Go问答   |  2年前  |   143浏览 收藏
  • 能通过fmt.Println函数来改变数组的值吗?
    能通过fmt.Println函数来改变数组的值吗?
    varxstruct{aboolbint16c[]int32}funcmain(){//a:=[]int32{1
    Golang · Go问答   |  2年前  |   428浏览 收藏
  • 为什么对 ReadString() 方法的结果进行切割会产生不正常的输出?
    为什么对 ReadString() 方法的结果进行切割会产生不正常的输出?
    packagemainimport("bufio""fmt""os")funcmain(){reader:=bufio.newreader(os.stdin)fmt.printf("input:")input,_:=reader.readstring('\n')fmt.println("thing\n"[:5]+"\"")fmt.println(input[:len(input)-1]+
    Golang · Go问答   |  2年前  |   235浏览 收藏
  • 解压缩 JSON 文件并转换为数据结构
    解压缩 JSON 文件并转换为数据结构
    我正在编写一个trieds,jsongzipped到文件triesample.json.gz中,并将其读回到结构中。奇怪的是,解组成功,但结构体未填充。我尝试了json.unmarshal和json.decoder但没有成功。需要帮助来找到我在这里缺少的东西。读取时不会抛出任何错误,只是该结构没有任何键。如果我尝试正常的jsonmarshal->写入文件并从文件读取->unmarshal,它可以正常工作。varcharSet="0123456789bcde
    Golang · Go问答   |  2年前  |   141浏览 收藏
  • func 关键字后面的两个函数名称意味着什么?
    func 关键字后面的两个函数名称意味着什么?
    最后一个函数怎么理解?为什么我们在func声明后使用不同的函数名称?如何使用这些功能?像main函数中所示的那样使用它是错误的。packagemainimport("fmt")funcmain(){fmt.Println(incrementer())//error}funcincrementer()func()int{//whatisit?!i:=0returnfunc()int{i
    Golang · Go问答   |  2年前  |   217浏览 收藏
  • 编写优雅且规范的 Go 包的方法
    编写优雅且规范的 Go 包的方法
    我尝试在Go中实现本文中的稀疏集并将其打包成一个包。在早期实现中,API是干净且最小的,仅导出类型Sparse和导出方法Insert、Delete、Has、Union、Intersection、Clearzqbendczqb和Len,几乎只是基本的集合操作。稍后,我想添加新功能,即可以自动保留元素的集合(我们将其称为AutoSparse)。如果Sparse具有将k插入集合的Insert(kint),则AutoSparse具有Reserved()保留可用元素。如果
    Golang · Go问答   |  2年前  |   210浏览 收藏
  • 如何在Go语言中比较错误码errno?
    如何在Go语言中比较错误码errno?
    在cgo中,你不能直接获取errno的值,但你可以在函数调用后使用双返回值获取它的结果。例如ret,错误:=c.write(...)。然而,看起来这个err只是一个不透明的错误接口,不能与errno常量进行比较。我该怎么办,例如像这样的东西:ret,err:=C.my_func()ifret==-1{//errorsignalediferr==C.EAGAIN{//doitagain}else{
    Golang · Go问答   |  2年前  |   132浏览 收藏
  • 使用 Faker 在 Go 测试中生成虚拟数据
    使用 Faker 在 Go 测试中生成虚拟数据
    我正在尝试学习go并编写我的第一个测试。我想弄清楚如何实现一个faker来测试terraform上的crud。我已经弄清楚如何导入faker并创建了要使用的变量。我尝试使用fmt.println来查看它是否生成,但是如果是测试,我在哪里可以看到println。当我进行测试时它不会打印。functestCheckTritonUserDelete(s*terraform.State)error{fmt.Println("INsidetestChec
    Golang · Go问答   |  2年前  |   264浏览 收藏
  • 在容器中启动进程引发错误:exec:“air”:找不到命令
    在容器中启动进程引发错误:exec:“air”:找不到命令
    我是码头工人的新手。我正在尝试使用docker-compose将我的go应用程序容器化。使用的技术golang、docker20.10.8和air(用于实时重新加载)。我的dockerfile如下所示。frombaseasdevworkdir/opt/app/apirunapkupdaterunapkaddgitgccmusl-devrunapkaddcurlruncurl-ssflhttps://raw.githubuserc
    Golang · Go问答   |  2年前  |   198浏览 收藏
  • 解决 Golang 跨平台构建挑战
    解决 Golang 跨平台构建挑战
    golang构建多平台问题我正在构建一个go应用程序,我想为linux和windows构建。对于windows部分,我希望它能够作为windows服务安装。因此,在我的应用程序中,我包含了以下软件包:golang.org/x/sys/windows/svcgolang.org/x/sys/windows/svc/debuggolang.org/x/sys/windows/svc/eventloggolang.org/x/sys/windows/svc/mgr它在win
    Golang · Go问答   |  2年前  |   132浏览 收藏
  • 解析 JSON 字符串使用 Golang
    解析 JSON 字符串使用 Golang
    我有以下json字符串{"x":{"l.a":"测试"}}typeObjectstruct{Foomap[string]map[string]string`json:"l.a"`}varobjObjecterr=json.Unmarshal(body,&obj)iferr!=nil{fmt.Println(err)}fmt.Println("jsonObj",obj)但是想知
    Golang · Go问答   |  2年前  |   462浏览 收藏
  • 在MongoDB Golang驱动中使用$facet查询
    在MongoDB Golang驱动中使用$facet查询
    如何使用mongogolang驱动程序将以下查询转换为管道db.transFront.aggregate([{$facet:{query1:[{$match:{appName:"app-38"}},{$count:"count"}],query2:[{$match:{appName:"app-43"}},{$count:"count"}],query3
    Golang · Go问答   |  2年前  |   468浏览 收藏
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    543次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    516次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    500次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    485次学习
  • Golang深入理解GPM模型
    Golang深入理解GPM模型
    Golang深入理解GPM调度器模型及全场景分析,希望您看完这套视频有所收获;包括调度器的由来和分析、GMP模型简介、以及11个场景总结。
    474次学习
查看更多
AI推荐
  • ljg-skills -
    ljg-skills
    ljg-skills 是李继刚开源的 AI 技能与提示词集合,面向大模型使用者整理了一批可复用的 prompt、角色设定和任务技能模板,适合用于学习提示词设计、搭建个人 AI 工作流和沉淀团队常用智能体能力。
    2261次使用
  • MELO音乐 - AI 音乐生成平台,支持多模态创作能力
    MELO音乐
    MELO音乐是一站式AI视频与音乐制作助手,对标suno, udio的高品质体验。提供伴奏生成、原创写词、无损导出、哼唱识曲、混音变声等全套音频与短视频编辑工具。无论是流行Kpop、电音说唱、民谣古风、摇滚儿歌还是商用轻音乐,MELO为你免费谱曲,轻松做同款!
    2076次使用
  • UniScribe - AI 免费在线音视频转文字平台
    UniScribe
    UniScribe 是一款 AI 音视频转文字与内容整理工具,支持上传音频、视频文件或粘贴 YouTube 链接,自动生成转写文本、摘要、思维导图和关键问题,并支持多格式导出,适合会议记录、课程学习、访谈整理和内容创作复盘。
    2022次使用
  • 剧云 - 免费 AI 智能中文剧本创作平台
    剧云
    剧云是专业中文剧本创作平台,安全稳定运行十余年,集成AI编剧、剧本医生审核、人物小传、剧情关系图、大纲编写、多人协作、Word导入导出、版权管控功能,数据安全防护,轻松高效创作剧本。
    2235次使用
  • 万象有声 - AI 一站式有声内容创作平台
    万象有声
    万象有声,一个专为有声创作者打造的新一代智能有声内容创作平台。平台提供专业的智能拆章、智能画本编辑、AI配音、AI生成音效、后期制作、智能对轨、智能审听等有声创作全流程工具,可以帮助创作者高效、低成本创作出引人入胜的有声作品。立即体验,让有声书制作更简单!
    2199次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码