zoukankan      html  css  js  c++  java
  • go-函数

    可以把函数作为值来传递和使用。Go语言中的函数可以返回多个结果。
    func(input1 string ,input2 string) string
    
    
    函数接受n个参数
    func add(a int, arg ...int) int { var sum int = a for i := 0; i < len(arg); i++ { sum += arg[i] } return sum } func concat(a string, arg ...string) (result string) { result = a for i := 0; i < len(arg); i++ { result += arg[i] } return }


    左边加入type关键字和一个标识符作为名称的话,那就变成了一个函数类型声明:
    type MyFunc func(input1 string ,input2 string) string{}
    结果声明是带名称的,那么它就相当于一个已被声明但未被显式赋值的变量。
    我们可以为它赋值且在return语句中省略掉需要返回的结果值。
    func myFunc(part1 string, part2 string) (result string) { 
        result = part1 + part2 
        return 
    } 
    一个函数的参数声明列表和结果声明列表中的数据类型的顺序和名称与某一个函数类型完全一致,前者就是后者的一个实现。
    var splice func(string, string) string  等价于 var splice MyFunc 
    可以在这个变量之上实施调用动作了:splice("1", "2")
    匿名函数来初始化splice变量
    var splice = func(part1 string, part2 string) string {
        return part1 + part2
    }   
    var result = func(part1 string, part2 string) string {
        return part1 + part2
    }("1", "2")
    函数类型的零值是nil。这意味着,一个未被显式赋值的、函数类型的变量的值必为nil。
  • 相关阅读:
    Go断后,Dart冲前,Google的野心
    gcc dynamic load library
    Go http server 高并发
    还是Go 为了伟大的未来
    windows go dll 框架
    Go cookie
    Go web ajax project
    hdoj 2844 Coins
    hdoj 1203 I NEED A OFFER!
    hdoj 2546 饭卡
  • 原文地址:https://www.cnblogs.com/osbreak/p/10401355.html
Copyright © 2011-2022 走看看