• Go笔记-结构、类型、常量


    【类型】
    1、可以包含数据的变量(或常量),可以使用不同的数据类型或类型来保存数据。使用 var 声明的变量的值会自动初始化为该类型的零值。类型定义了某个变量的值的集合与可对其进行操作的集合。
     
    2、基本类型
        int、float、bool、string;结构化的(复合的),如:struct、array、slice、map、channel;
        只描述类型的行为的,如:interface。
    结构化的类型没有真正的值,它使用 nil 作为默认值
    函数也可以是一个确定的类型,就是以函数作为返回类型
     
    3、可以自己定义自己的类型:
        tpye IZ int
        var a IZ = 5
    多个类型的定义
        type(
            IZ int
            FZ float64
            STR string
        )
     
     
    【程序结构】
    1、结构顺序:
        在完成包的 import 之后,开始对常量、变量和类型的定义或声明
        如果存在 init 函数的话,则对该函数进行定义(这是一个特殊的函数,每个含有该函数的包都会首先执行这个函数)
        如果当前包是 main 包,则定义 main 函数
        然后定义其余的函数,首先是类型的方法,接着是按照 main 函数中先后调用的顺序来定义相关函数,如果有很多函数,则可以按照字母顺序来进行排序
    2、import
        import “fmt”  或者 import fm "fmt"
     
     
    【程序执行顺序】
     
    1. 按顺序导入所有被 main 包引用的其它包,然后在每个包中执行如下流程:
    2. 如果该包又导入了其它的包,则从第一步开始递归执行,但是每个包只会被导入一次。
    3. 然后以相反的顺序在每个包中初始化常量和变量,如果该包含有 init 函数的话,则调用该函数。
    4. 在完成这一切之后,main 也执行同样的过程,最后调用 main 函数开始执行程序。
     
    【常量】
    常量的定义格式:const identifier [type] = value
    在 Go 语言中,你可以省略类型说明符 [type],因为编译器可以根据变量的值来推断其类型。
       显式 const a string = "abc"
       隐式const a = "abc"
    常量的值必须是能够再编译时就能够确定的
        正确 const c1 = 3
        错误 const c2 = getNumber()   //  在编译期间自定义函数属于未知,因此无法用于常量的赋值,但内置函数可以使用,如len()
    常量的几种常用定义
        const a,b,c = "a","b","c"
        const (
            Monday,Tuesday,Wednesday = 1,2,3
            Thursday,Friday,Saturday = 4,5,6
        )
        const (
            Unknown = 0
            Female = 1
            Male = 2
        )
     
     
    学习参考处:https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/directory.md
  • 相关阅读:
    安装Sql Server 2008 错误:the folder "c:\temp\sql2008_fullsp3_standard\pcu" you specified is not for pcusource input setting. Specify a valid folder.
    Log4Net error: Inheritance security rules violated while overriding member: 'log4net.Util.ReadOnlyPropertiesDictionary.GetObjectData.....
    Java成长路线
    项目开发之故事经典:教授的裤子分析
    书籍的未来数字化革命的产物:电子书
    如何访问我的博客
    ComboBox应该如何绑定数据
    C#中的常用关键字
    如何编写优秀软件
    为什么现在都用面向对象开发,为什么现在都用分层开发结构?
  • 原文地址:https://www.cnblogs.com/ymkfnuiwgij/p/7854299.html
Copyright © 2020-2023  润新知