相关疑难解决方法(0)

传递的自定义类型用作参数

当我定义一个自定义类型时,似乎底层类型的类型对我是否可以将其传递给函数或我需要转换它有所不同.

问题是: 为什么RuneFuncStringMap有效,但不是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)

在这里,当我运行这个函数调用nfInteger它抱怨,虽然int是基础类型.但是当我打电话mfff他们成功运行时.

types type-conversion go

9
推荐指数
1
解决办法
889
查看次数

标签 统计

go ×1

type-conversion ×1

types ×1