当前位置: 首页 > news >正文

爱站网自媒体数据软件开发公司起名

爱站网自媒体数据,软件开发公司起名,网站流量提供商,dw做的静态网站怎么分享链接Go程序结构 1、名称 ​ 名称的开头是一个字母或下划线,且区分大小写。 实体第一个字母的大小写决定其可见性是否跨包: ​ 若名称以大写字母开头,它是导出的,对包外是可见和可访问的,可以被自己包以外的其他程序所引用…

Go程序结构

1、名称

​ 名称的开头是一个字母下划线,且区分大小写

实体第一个字母的大小写决定其可见性是否跨包:

​ 若名称以大写字母开头,它是导出的,对包外是可见和可访问的,可以被自己包以外的其他程序所引用,比如fmt包中的Printf。

包名本身总是由小写字母组成的。

一般使用驼峰式命名;

像ASCII和HTML这样的首字母缩写词通常使用相同的大小写,如html,而不是Html;

2、声明

​ 声明是给一个程序实体命名,并且设定其部分或者全部属性。

有四个主要的声明:

变量(var)、常量(const)、类型(type)、函数(func);

go程序存储在一个或多个以.go为后缀的文件里;

每一个文件以package声明开头,表明文件属于哪个包;接着是import声明

3、变量

​ var声明创建一个具体类型的变量,给它一个附加的名字,设置它的初始值。

var name type = expression
//类型和表达式部分可以省略一个,但不能都省略
var s string  //""
var b = true //bool

Go中所有变量都是初始化的,若未设置初始值,则为零值

类型默认零值
数字(int、float)0
布尔型 (bool)false
接口和引用类型(slice、指针、map、通道、函数)nil
复合类型(数组或者结构体)零值是所有元素的零值
3.1、短变量声明

​ 短变量声明可以用来声明和初始化局部变量

name := expression
//name的类型由expression决定
i := 100 //一个int类型的变量
// := 表示声明, = 表示赋值

​ var声明通常是为那些跟初始化表达式类型不一致的局部变量保留的,或者用于后面才对变量赋值以及变量初始值不重要的情况。

​ 短变量声明不需要声明所有在左边的变量;

3.2、指针

​ 变量是存储值的地方;

​ 指针的值是一个变量的地址,不是所有的值都有地址,但是所有的变量都有。

​ 使用指针可以在无须知道变量名字的情况下,间接读取或更新变量的值。

x := 1
p := &x  // p是整型指针,指向x
fmt.Println(*p) // 1 , *p获取变量的值
*p = 2 //p指向的变量写成*p, *p代表一个变量, 本式等于 x = 2
fmt.Println(x)
3.3、new函数

​ 另一种创建变量的方式是使用内置的new函数,表达式new(T),创建一个未命名的t类型变量,初始化为T类型的零值,并返回其地址(*T)

p := new(int) // *int类型的p,指向未命名的int变量,new函数返回 *int
fmt.Println(*p) //输出“0”
*p = 2 

note: 使用new创建的变量和取其地址的普通局部变量没有什么不同,只是不需要引入一个虚拟的名字。通过new(T)就可以直接在表达式中使用,故只是语法上的便利。

new是一个预声明的函数,不是一个关键字,使用的相对较少。

4.赋值

​ 赋值语句用来更新变量所指的值,赋值符号 “=” 。

​ 多重赋值,允许几个变量一次性被赋值;(在实际更新变量前,右边所有的表达式被推演)

5、类型声明

​ 变量或表达式的类型定义这些值应有的特性,例如大小、在内部如何表达、可以对其进行何种操作以及它们所关联的方法

​ type声明定义一个新的命名类型,它和某个已有类型使用同样的底层类型。

type name underlying-type
type Celsiue float64 //定义类型Celsiue

note:对于每个类型T,都有一个对应的类型转换操作T(x)将值x转换为类型T。如果两个类型具有相同的底层类型或者二者都是指向相同底层类型变量的未命名指针类型,则二者是可以相互转换的。

6、包初始化

func init() {/*...*/}

在每一个文件里,当程序启动时,init函数按照它们声明的顺序自动执行,init函数不能被调用和被引用;

http://www.yayakq.cn/news/329364/

相关文章:

  • 东莞电子网站建设宁波品牌网站制作哪家好
  • 网站服务器租赁价格最简单的企业网站
  • 类似于微博网站怎么做的网页设计个人网站下载
  • 六安网站建设 220做推广的网站带宽需要多少合适
  • 北京网站建设华大建设银行不良资产处置网站
  • 北京优化网站建设网站开发工作分解结构
  • 威海临港区建设局网站网络营销论文答辩提问
  • 语言网站开发平面设计找素材的网站
  • 微信上做网站怎么做wordpress 豆瓣评分
  • 天津建设网站天津市地铁规划图石家庄网站空间
  • 昌平区网站建设代理 指定网站 host
  • 长沙市做网站的网站房产网站系统哪个好
  • 百度收录检测seo是什么意思啊电商
  • 优秀企业网站建设哪家服务好怎么重新打开wordpress
  • visual studio做的网站手工做女宝宝衣服的网站
  • app网站的优点电子商务网站设计规划书
  • 重庆外贸网站建设公司什么是优化珍珠
  • 昆明网站建设推荐力鼎科技电商详情页设计思路
  • 建站高端网站logo设计网站在线
  • php网站开发设计模式高清视频服务器
  • 博物馆 网站 建设新闻宣传培训网站内容建设
  • 航达建设网站怎么把网站排名
  • 电子商务网站建设期末试题中小企业上市公司名单
  • 宁波建网站公司哪家hao网站优化优化怎么做
  • 企业手机网站建设案例做外贸 网站邮箱申请
  • 家谱网站源码下载重庆有几个区几个县
  • 邯郸房产网站网站性能优化方法
  • 网站 站外链接在线教育培训平台定制
  • 网站建设是什么费用百度网站建设北京
  • 苏宁易购网站建设 的定位柳州网站建设推荐