minibear2333 / blog-comment

0 stars 0 forks source link

2 1 Func | go语言精进之路 #16

Open utterances-bot opened 3 years ago

utterances-bot commented 3 years ago

2 1 Func | go语言精进之路

2.1 函数简单使用和基本知识解析 # 本节源码位置 https://github.com/golang-minibear2333/golang/blob/master/2.func-containers/2.1-func 这里的源码有多个,本节相关的有

函数的简单使用 main.go # 函数当作变量使用,当做 参数传递 functi

https://golang.coding3min.com/2.func-containers/2-1-func/

Yerikshu commented 3 years ago

我在想,无返回值存在的必要性,按照作者的描述,go的函数约定是必须要有返回值的。不过计算机网络中有个路由黑洞的概念,其实跟这个场景很像,因此void函数还是需要的

minibear2333 commented 3 years ago

我在想,无返回值存在的必要性,按照作者的描述,go的函数约定是必须要有返回值的。不过计算机网络中有个路由黑洞的概念,其实跟这个场景很像,因此void函数还是需要的

语法中是不需要加void的,也许go内部自动追加了,就像不用加分号,实际上是go自动追加了分号一样

list-processing commented 3 years ago

针对于2.1.5,要传进去函数名的字符串,是不是可以优化成一个参数,只传函数,然后动态获取函数名:

func main() { name := runtime.FuncForPC(reflect.ValueOf(main).Pointer()).Name() fmt.Println("Name of function : " + name) }

minibear2333 commented 3 years ago

针对于2.1.5,要传进去函数名的字符串,是不是可以优化成一个参数,只传函数,然后动态获取函数名:

func main() { name := runtime.FuncForPC(reflect.ValueOf(main).Pointer()).Name() fmt.Println("Name of function : " + name) }

感谢分享,确实是不错的方法,晚点更新进去