草庐IT

T_OLD_FUNCTION

全部标签

hash - Go 中的 OpenPGP 错误 : "crypto: requested hash function is unavailable"

我正在玩弄openpgp通过制作一个简单的程序来加密短消息和ASCII装甲,为Go打包。我目前的代码是:packagemainimport("code.google.com/p/go.crypto/openpgp""code.google.com/p/go.crypto/openpgp/armor""fmt""log""os")funcmain(){to,err:=openpgp.NewEntity("JohnSmith","comment","john@example.com",nil)iferr!=nil{log.Fatal(err)}from,err:=openpgp.NewEn

Golang 标志库 : Unable to override Usage function that prints out command line usage

我正在开发一个简单的命令行工具,但我发现默认的Usage消息有点欠缺。我想定义我自己的,我认为我做对了我指的是thisexample.我注释掉了我编写的大部分代码,因此包含main函数的文件现在看起来像这样:packagemainimport("flag""fmt""os")funcmain(){//setthecustomUsagefunctionsetupFlags(flag.CommandLine)//defineflags...//thenparseflagsflag.Parse()//customcodethatusesflagvalues...}funcsetupFlags

go - 在 golang 中运行 "function ends without a return statement"时如何绕过 `go get`

我正在尝试为golang安装此Cassandra驱动程序:https://github.com/tux21b/gocql当我执行gogethttps://github.com/tux21b/gocql我得到root@backend:/vagrant#gogettux21b.org/v1/gocql#tux21b.org/v1/gocql/usr/lib/go/src/pkg/tux21b.org/v1/gocql/conn.go:280:functionendswithoutareturnstatement/usr/lib/go/src/pkg/tux21b.org/v1/gocql/

function - 如何理解这个递归结果

我在编码时写了一个bug,当我解决这个问题时,我对代码的输出感到困惑,代码如下:type(Handlerfunc(namestring)error)funcmh(hHandler)Handler{returnfunc(namestring)error{fmt.Printf("returnmh,name=%s,h=%x\n",name,h)returnh(name)}}funcmain(){varhHandlerh=func(namestring)error{fmt.Printf("********************************\n")fmt.Printf("befor

结构 : Can it be directional when passed to a function? 中的 Golang channel

将channel传递给函数时,我知道您可以指定channel可以使用channel的方向;例如,funcMyFunc(chchan"ch"只能被MyFunc用来将字符串发送到别处的接收者,而MyFunc不能监听来自ch的消息。为了简化为一定数量的goroutine创建动态数量的channel,我创建了一个包含channel的结构。typeChanStructstruct{chMessageschanstring}然后我实例化一个结构:varslcChanStruct[]ChanStructfora:=0;a现在我有3个结构,我可以通过对结构slice进行范围调整来使用channel单独

reflection - 戈朗 : Function to determine the arity of functions?

是否可以编写一个函数来确定任意函数的元数,这样:1.funcmult_by_2(xint)int{return2*x}fmt.Println(arity(mult_by_2))//Prints12.funcadd(xint,yint)int{returnx+y}fmt.Println(arity(add))//Prints23.funcadd_3_ints(a,b,cint)int{returnb+a+c}fmt.Println(arity(add_3_ints))//Prints3 最佳答案 您可以使用reflect编写这样的函数

function - 如何在不调用函数的情况下判断类型的基函数是否已在 Go 中被覆盖?

我正在用Go实现一个简单的路由器。当未为该端点实现调用的方法时,我曾经为每个端点返回错误的大量冗余代码。我重构并制作了一个“基本”类型,它为每个只返回未实现错误的请求类型提供默认函数。现在我所要做的就是覆盖我希望实现的给定端点的特定方法函数。这一切都很有趣和游戏,直到我想弄清楚,给定一个端点变量,哪些方法被覆盖了?省略多余的细节,这里是我现在能想到的最简单的例子:packagemainimport("fmt")//RoutedefinestheHTTPmethodhandlers.typeRouteinterface{Get()stringPost()string}//BaseRout

function - 是否可以使用 golang 中的自定义库触发编译时错误?

比方说,我有一个min()(仅作为示例)一个可变参数函数,用于从提供的多个值中定义最小值。如果调用者没有提供任何参数,我想停止编译过程(因为这将是调用者的错误,而不是我的函数中的错误)。怎么做? 最佳答案 根据语言规范,调用具有可变参数且不传递任何参数的函数是有效的。所以你不能让它成为编译时错误。但是,您可以修改函数的签名以具有非可变参数和可变参数,然后不带参数调用它确实会出现编译时错误:funcmin(firstint,rest...int)int{m:=firstfor_,v:=rangerest{ifv这将强制调用者传递至少1

function - 如何在 Go 中通过反射测试一组函数?

我必须为几个具有相似签名和返回值(一个对象和一个错误)的函数编写单元测试,它们必须通过相似的测试条件。我想避免写:funcTestFunc1(t*testing.T){//testsonreturnvalues}funcTestFunc2(t*testing.T){//testsidenticalforFunc1}funcTestFunc3(t*testing.T){//testsidenticalforFunc1}...(有关更完整的上下文,请参阅thisgoplaygroundexample)(是的,goplayground还不支持gotest,只支持gorun,issue6511

function - go 的 len() 和 make() 函数是如何工作的?

go的len()和make()函数是如何工作的?由于该语言缺乏对泛型和函数重载的支持,我看不出funclen(vType)int是如何实现的。funcmake(Type,sizeIntegerType)Type也是如此。我似乎无法在go源代码中找到该函数,我找到的最接近的是this 最佳答案 len和make函数是语言规范的一部分,内置于编译器中。对内置函数的运行时支持在runtimepackage中.文件builtin.go仅用于文档。它没有编译。 关于function-go的len(