Golang:函数命名返回值

可以给一个函数的返回值指定名字。如果指定了一个返回值的名字,则可以视为在该函数的第一行中定义了该名字的变量。

让我们写一个函数 rectProps,它接受一个矩形的长和宽,并返回该矩形的面积和周长。

package main

import (
    "fmt"
)

func rectProps(length, width float64) (area, perimeter float64) {
    area = length * width
    perimeter = (length + width) * 2
    return //no explicit return value
}

func main() {
    area, perimeter := rectProps(10.8, 5.6)
    fmt.Printf("Area %f Perimeter %f", area, perimeter)
}

在上面的函数中,areaperimeter 是命名返回值。注意 return 语句没有指定任何返回值。因为在函数声明时已经指定 areaperimeter 是返回值,在遇到 return 语句时它们会自动从函数中返回。

在 Golang 中,有返回值的函数,无论是命名返回值还是普通形式的返回值,函数中必须包含 return 语句。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容