我正在使用Mac,但我想学习并使用Ubuntu进行开发,而我并不关心GUI.我以前使用Vagrant和ssh到机器,但它消耗了我的大部分机器资源.我是否可以将docker用于同一目的,同时还具有VM的隔离(当我搞砸了)?
当我定义一个自定义类型时,似乎底层类型的类型对我是否可以将其传递给函数或我需要转换它有所不同.
问题是:
为什么RuneFunc
和StringMap
有效,但不是Integer
?
https://play.golang.org/p/buKNkrg5y-
package main
type RuneFunc func(rune) rune
type Integer int
type StringMap map[string]string
func main() {
//m := make(StringMap)
//mf(m)
var i Integer = 5
nf(i)
//var f func(rune) rune
//ff(f)
}
func mf(i map[string]string) {
}
func ff(i func(rune)rune) {
}
func nf(i int) {
}
Run Code Online (Sandbox Code Playgroud)
在这里,当我运行这个函数调用nf
与Integer
它抱怨,虽然int
是基础类型.但是当我打电话mf
或ff
他们成功运行时.