442得票12回答
如何避免烦人的“已声明但未使用”的错误?

我正在学习Go语言,但感觉在编译时不能留下未使用的变量或包有点麻烦。 这真的很拖慢我的速度。例如,我只想声明一个新包并计划稍后使用它,或者只是取消注释一些命令进行测试。我总是会得到错误提示,需要去注释掉所有这些用途。 有没有办法避免在Go中进行这种检查?

421得票10回答
从地图中获取键的一部分

在Go语言中是否有更简单/更好的方法来获取map的键的子集? 目前,我正在遍历该map并将键复制到一个slice中:i := 0 keys := make([]int, len(mymap)) for k := range mymap { keys[i] = k i++ }

416得票16回答
在GitHub私有仓库中,运行"go get"命令时出现“终端提示禁用”错误。

我使用 Github 界面在浏览器中创建了私有仓库 examplesite/myprivaterepo。 然后我到我的 go 目录(位于桌面上)并进行了克隆操作: $ cd $GOPATH $ go get github.com/examplesite/myprivaterepo 到目...

415得票5回答
正确的初始化空切片的方法

声明一个非固定大小的空切片,更好的方法是:mySlice1 := make([]int, 0) 或:mySlice2 := []int{} 只是想知道哪一种是正确的方式。

415得票8回答
使用go get安装的包如何卸载?

在我学习之前,我运行了go get package以下载一个包,但后来发现需要设置我的GOPATH,否则此包将破坏我的根Go安装(我更喜欢保持我的Go安装干净,并将核心和自定义分开)。我如何删除先前安装的包?

404得票4回答
X没有实现Y(...方法有一个指针接收器)

这个"X不实现Y (...方法有指针接收器)"的问题已经有过几个问答,但在我看来,它们似乎在谈论不同的事情,并且不适用于我的具体情况。 所以,我不想把问题描述得太具体,而是让它更加广泛和抽象——似乎有几种不同的情况会导致出现这个错误,请问有人能总结一下吗? 换句话说,如何避免这个问题,如果...

393得票9回答
如何在Go中通过POST请求发送JSON字符串

我尝试使用Apiary,并创建了一个通用模板,用于向模拟服务器发送JSON,以下是这段代码:package main import ( "encoding/json" "fmt" "github.com/jmcvetta/napping" "log" ...

381得票12回答
如何在控制台中从标准输入读取数据?

我想从命令行读取标准输入,但我的尝试都以程序在提示我输入之前退出而告终。我正在寻找C#中类似于Console.ReadLine()的方法。 以下是我目前拥有的代码:package main import ( "bufio" "fmt" ...

366得票10回答
Go语言如何读写文件

我试着自学Go语言,但在尝试读写普通文件时遇到了困难。 我可以使用inFile, _ := os.Open(INFILE, 0, 0)来打开文件,但是获取文件的内容让我感到困惑,因为读取函数需要一个[]byte类型的参数。func (file *File) Read(b []byte) (n ...

363得票31回答
如何在Ubuntu上设置GOPATH环境变量?我需要编辑哪个文件?

我正在尝试执行 go get 命令:go get github.com/go-sql-driver/mysql 并且它以以下错误失败:package github.com/go-sql-driver/mysql: cannot download, $GOPATH not set. For mo...