内容简介:代码清单 1-1 与 Go Playground 的初次见面:Go 对于大括号Go 之所以如此严格地限制大括号的放置风格,跟这门语言刚刚诞生时发生的一些事情有关。 在早期,使用 Go 编写的代码总是无一幸免地带有分号,它们就像迷路的小狗一样跟在每条单独的语句后面,比如这样:
代码清单 1-1 与 Go Playground 的初次见面: playground.go
package main // 声明本代码所属的包
import (
"fmt" // 导入 fmt 包,使其可用(fmt是format的缩写)
)
func main() { // 声明一个名为 main 的函数
fmt.Println("Hello, playground") // 在屏幕上打印出“Hello, playground”
}
Go 对于大括号 {} 的摆放位置非常挑剔。 在代码清单 1-1 中,左大括号 { 跟 func 关键字位于同一行,而右大括号 } 则独占一行。 这是 Go 语言 唯一允许的大括号放置风格 ,除此之外的其他风格都是不被允许的。 作为参考, mng.bz/NdE2 展示了各种不同的大括号放置风格。
Go 之所以如此严格地限制大括号的放置风格,跟这门语言刚刚诞生时发生的一些事情有关。 在早期,使用 Go 编写的代码总是无一幸免地带有分号,它们就像迷路的小狗一样跟在每条单独的语句后面,比如这样:
fmt.Println("Hello, fire hydrant");
到了 2009 年 12 月,一群忍者 gopher 决定把分号从语言中驱逐出去。 好吧,这么说也不太准确。 实际上,Go 编译器将为你代劳,自动地插入那些可爱的分号。 这种机制运行得非常完美,但它的代价就是要求用户必须遵守上面提到的 唯一无二的大括号放置风格 。
如果用户尝试将左大括号和 func 关键字放在不同的行里面,那么 Go 将报告一个语法错误:
func main() // 函数体缺失
{ // 语法错误:在 { 之前发现了意料之外的分号或新行
}
出现这个问题并不是编译器有意刁难,这纯粹是由于分号被插入到了错误的位置,导致编译器犯了点小迷糊,最终才不得不求助于你。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 自定义按钮 图片标题位置随意放置
- MySQL 查询条件放置 on 和 where 的区别
- 微软开源Windows计算器 源码已经放置在GitHub上
- Leetcode 题目:括号匹配
- 括号生成-LeetCode22
- 正则笔记之括号
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Linux内核设计与实现
拉芙 / 陈莉君、唐华、张波 / 机械工业出版社 / 2006-1 / 38.00元
《Linux内核设计与实现》基于Linux2.6内核系列详细介绍Linux内核系统,覆盖了从核心内核系统的应用到内核设计与实现等各方面的内容。主要内容包括:进程管理、系统调用、中断和中断处理程序、内核同步、时间管理、内存管理、地址空间、调试技术等。本书理论联系实践,既介绍理论也讨论具体应用,能够带领读者快速走进Linux内核世界,真正开发内核代码。 本书适合作为高等院校操作系统课程的教材......一起来看看 《Linux内核设计与实现》 这本书的介绍吧!