11

我是 Go 编程语言的完全初学者,我正在尝试定义一个调用的 Go 函数的参数类型,该函数addStuff只是将两个整数相加并返回它们的总和,但是当我尝试编译该函数时看到以下错误:

prog.go:6: undefined: a
prog.go:6: undefined: b
prog.go:7: undefined: a
prog.go:7: undefined: b
prog.go:7: too many arguments to return
prog.go:11: addStuff(4, 5) used as value

这是产生此编译器错误的代码:

package main

import "fmt"
import "strconv"

func addStuff(a, b){
    return a+b
}

func main() {
    fmt.Println("Hello," + strconv.Itoa(addStuff(4,5)))
}

我在这里做错了什么,在Go中设置参数类型的正确方法是什么?

4

1 回答 1

30
func addStuff(a int, b int) int {
    return a+b
}

这将使ab参数类型为int,并让函数返回一个int. 另一种方法是func addStuff(a, b int) int同时将ab参数设为 type int

我强烈推荐A Tour of Go,它教授 Go 的基础知识。

于 2013-05-29T19:21:27.283 回答