go语言程序结构

一、命名

  1.命名规则

    a.一个名字必须以一个字母(Unicode字母)或者下划线开头。

    b.后面可以跟任意数量的字母,数字,下划线。

    c.区分大小写

  2.不可用于自定义名字的25个关键字

break   default    func i   nterface    select  
case    defer      go      map    struct   
chan    else     goto    package       switch
const     fallthrough       if       range     type  
continue     for      import      return     var
25个关键字

  3.30多个预定义的名字

内建常量: true    false    iota     nil

内建类型: int     int8    int16   int32   int64
               uint    uint8    uint16    uint32    uint64    uintptr
               float32    float64    complex128    complex64
               bool    byte    rune    string    error

内建函数:make    len    cap    new    append    copy    close    delete
               complex    real    imag
               panic    recover
30多个预定义的名字

    a.内部预订名字不是关键字

    b.可以再定义,重新使用它们

    c.一般不要定义它们,除非在一些特殊的场景里。(什么场景能使用,我也想不到。反正少用就对了)  

  4.作用域

    a.如果一个名字是在函数内部定义,那么他就只在函数内部有效。

    b.如果在函数外部定义,那么将在当前包的所有文件夹中都可以访问。

    c.如果一个名字是大写字母开头的(必须是在函数外部定义的包级名字;包级函数名本身也是包级名字),那么他是可以导出的,也就是说可以被外部的包访问。

    d.包本身的名字一般总用小写字母。

  

  5.命名方式

    go语言推荐使用驼峰命名方式

二、声明

  1.声明语句的意义,以及go语言的四种主要类型

    a.声明语句定义了程序的各种实体对象以及部分或全部属性

    b.四种类型:

      变量:var

      常量:const

      类型:type

      函数:func

  

  2.一个例子简单介绍下各个声明的部分

package main


//导入声明
import (
    "fmt"
)

//常量声明,包一级范围声明。可以再整个包中的每个源文件中使用
const boilingF = 212.0

//函数声明,无返回值,无参数的函数申明
func main()  {

    //变量声明,函数级声明,只能在函数中使用
    bool1 :=true

    if bool1{
        fmt.Println("this value is true")
    }else {
        fmt.Println("this value is fales")
    }

    c := test(1)
    fmt.Println(c)
}
//带参数和返回值的函数声明,无返回值省略(返回值)一项。但是哪怕没有参数,也不可省略(参数)这一项。
// func 函数名(参数)(返回值){执行语句}
func test(a int) (b int) {
    b = a +1
    return b
}
简介各个申明
 
 

猜你喜欢

转载自www.cnblogs.com/ppzhang/p/10626055.html