无法将int分配给Go中的变量

时间:2015-09-30 10:43:15

标签: go int

转到版本 - 1.2.1

package main

import "fmt"

func main(){
    type INTEGER int
    var aa INTEGER
    var bb INTEGER
    aa, bb = F(100,50)
    fmt.Println(aa,bb)
}

func F(a int, b int) (sum int, difference int){
    return a+b, a-b
}

输出:

/g.go:9:无法在多个赋值中将int赋值给aa(类型为INTEGER) ./g.go:9:无法在多次赋值中将int赋值给bb(类型为INTEGER)

1 个答案:

答案 0 :(得分:8)

type会创建一个新类型,因此显然会失败。您必须明确将值从int转换为INTEGER

aaInt, bbInt := F(100, 50)
aa, bb = INTEGER(aaInt), INTEGER(bbInt)