美文网首页
神奇的Go笔记

神奇的Go笔记

作者: 汨罗在北方 | 来源:发表于2018-03-30 11:33 被阅读1次
  • 当标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,如:Group1,那么使用这种形式的标识符的对象就可以被外部包的代码所使用(客户端程序需要先导入这个包),这被称为导出(像面向对象语言中的 public);标识符如果以小写字母开头,则对包外是不可见的,但是他们在整个包的内部是可见并且可用的(像面向对象语言中的 protected )。

  • 声明变量的一般形式是使用 var 关键字,常量声明用const

var identifier type
const identifier [type] = value
package main

var x, y int
var (  // 这种因式分解关键字的写法一般用于声明全局变量
    a int
    b bool
)

var c, d int = 1, 2
var e, f = 123, "hello"

//这种不带声明格式的只能在函数体中出现
//g, h := 123, "hello"

func main(){
    g, h := 123, "hello"
    println(x, y, a, b, c, d, e, f, g, h)
}
  • _是一个只写变量,你不能得到它的值
_, b = 5, 7
  • 可以并行赋值
a, b, c = 5, 7, "abc"
  • 神奇的iota
    iota,特殊常量,可以认为是一个可以被编译器修改的常量。
package main

import "fmt"

func main() {
    const (
            a = iota   //0
            b          //1
            c          //2
            d = "ha"   //独立值,iota += 1
            e          //"ha"   iota += 1
            f = 100    //iota +=1
            g          //100  iota +=1
            h = iota   //7,恢复计数
            i          //8
    )
    fmt.Println(a,b,c,d,e,f,g,h,i)
}
  • 注意 ^是按位异或
  • Go支持指针
    • & 返回变量存储地址
      • 指针变量

相关文章

网友评论

      本文标题:神奇的Go笔记

      本文链接:https://www.haomeiwen.com/subject/whimcftx.html