Go如何计算地图中键的哈希值?它是真正独一无二的,是否可用于其他结构?
我认为原始键很容易int或者不可变,string但对于复合结构来说它似乎是不平凡的.
Go似乎没有强制遵守接口的结构.为什么以下代码编译?
package main
type LocalInterface interface {
SomeMethod(string) error
SomeOtherMethod(string) error
}
type LocalStruct struct {
LocalInterface
myOwnField string
}
func main() {
var localInterface LocalInterface = &LocalStruct{myOwnField:"test"}
localInterface.SomeMethod("calling some method")
}
Run Code Online (Sandbox Code Playgroud)
似乎这不应该编译,因为SomeMethod没有实现.go build结果没有问题.
运行它会导致运行时错误:
> go run main.go
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x20 pc=0x4013b0]
goroutine 1 [running]:
panic(0x460760, 0xc08200a090)
C:/Go/src/runtime/panic.go:464 +0x3f4
main.(*LocalStruct).SomeMethod(0xc0820064e0, 0x47bf30, 0x13, 0x0, 0x0)
<autogenerated>:3 +0x70
main.main()
C:/Users/kdeenanauth/Documents/git/go/src/gitlab.com/kdeenanauth/structTest/main.go:16 +0x98
exit status 2
Run Code Online (Sandbox Code Playgroud) 我注意到从goji导入包时 - 它直接托管在他们的域之外,例如:
package web
import (
"goji.io"
)
func Start() {
mux := goji.NewMux()
}
Run Code Online (Sandbox Code Playgroud)
如何通过go请求包以及如何以这种方式托管?我找不到任何文档,所以我认为它可能是一个巧妙的技巧.
有没有什么方法可以将堆栈跟踪作为字符串获取?
查看调试包(https://golang.org/pkg/runtime/debug/),它只能打印到标准输出。
如何利用Google Cloud Natural Language API对Google表格中的文字进行情感分析?
是否有可用的集成或是否有适当的方法来集成他们的REST API?