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

    一.函数的命名

    无参数无返回值

    方式一
    func 函数名()(){}
    
    方式二
    func 函数名(){} 
    

    无参数有返回值

    方式一
    func 函数名()(返回参数1的数据类型1){}
    

    定长参数,有返回值

    func 函数名(参数1 类型,参数2 类型)(返回参数1的数据类型1,返回参数2的数据类型){}
    //如果参数1与参数2的数据类型相同
    func 函数名(参数1,参数2 类型)(返回参数1的数据类型1,返回参数2的数据类型){}
    //如果参数1与参数2的数据类型为int,参数3数据类型为uint
    func 函数名(参数1,参数2 int,参数3 uint)(返回参数1的数据类型1,返回参数2的数据类型){}
    

    定长参数,无回值

    //方式一
    func 函数名(参数1 类型,参数2 类型){}
    
    //方式二
    func 函数名(参数1 类型,参数2 类型)(){}
    

    不定长参数

    //方式一
    func 函数名(不定长参数1... 类型){}
    
    //有定长参数和不定长参数
    func 函数名(定长参数 类型,不定长参数1... 类型){}
    //不定长的参数必须写在定长的参数后面
    
    //不定长参数所有数据类型
    func 函数名(不定长参数1... interface{}){}
    

    匿名函数

    //定义
    func (参数一,参数二)(返回参数1的数据类型1){return 1 }
    //定义+调用
    func (参数一,参数二)(返回参数1的数据类型1){return 1 }()
    

    命名返回值

    package main
    
    import "fmt"
    
    func abc()(a int,b int){
        //var a,b int  相当于默认执行这条
        //但是ab只在函数内生效函数外部生效
    	return    
        //return 与return a,b是一样的
    }
    func main() {
    	fmt.Println(abc())
    }
    

    二.注意点

    • 由于是编译型语言main 与main里面使用的函数不需要注意先后关系
    • 没有关键字传参
    • 没有默认参数
    • 函数没有缩进的约数,但是为了排版还是要注意缩进不然会看上去非常非常
  • 相关阅读:
    推荐一个不错的在线Linux学习平台(免安装系统)
    C#基本语法知识
    GDI+ 使用LockBits和指针加快处理速度
    C#对图像像素处理的三种方式
    [转]video4linux(v4l)使用摄像头的实例基础教程与体会
    Eclipse Qt开发环境的建立
    c#图像处理基础
    [转]超酷的图像效果
    Qt开发环境的建立
    C++模版全掌握(实例)
  • 原文地址:https://www.cnblogs.com/pythonywy/p/11884406.html
Copyright © 2011-2022 走看看