目录

Go语言圣经2.2-声明

【Go语言圣经】2.2 声明

目标

了解

  1. Go 语言中的声明语句用于定义程序中的实体对象及其属性
  • var 声明 :用于声明变量
  • const 声明 :用于声明常量
  • type 声明 :用于声明自定义类型
  • func 声明 :用于声明函数
  1. 一个 Go 程序中,源文件通常包含以下几个部分:包声明、import语句、包级声明、局部声明
  2. 变量和类型的声明

概念

  1. 声明语句的基本概念
  • 声明的作用
  • 命名:为实体对象命名,如变量、常量、类型和函数。
  • 分配属性:同时定义对象的类型、初始值或其他属性。
  • 类型区分
  • 包级声明 :在文件最外层声明的名字在整个包内都可见;如常量 boilingFboiling 示例中定义后,可在同一包的其他源文件中使用。
  • 局部声明 :在函数内部声明的名字只在该函数内有效,如 main 函数中的变量 fc
  1. 文件结构和声明顺序
  • 每个 Go 源文件以 package 声明开始,接着是 import 语句,然后是包级别的声明。
  • 包级声明的顺序不影响程序的执行,因为编译器会统一处理,而函数内部的声明必须满足先声明后使用的规则。

要点(案例)

常量与变量的声明

// Boiling prints the boiling point of water. package main import “fmt” const boilingF = 212.0 func main() { var f = boilingF var c = (f - 32) * 5 / 9 fmt.Printf(“boiling point = %g°F or %g°C\n”, f, c) // Output: // boiling point = 212°F or 100°C }

函数声明和调用

函数声明由函数名、参数列表、可选的返回值列表和函数体组成。如果函数没有返回值,则返回值列表可以省略。 // Ftoc prints two Fahrenheit-to-Celsius conversions. package main import “fmt” func main() { const freezingF, boilingF = 32.0, 212.0 fmt.Printf("%g°F = %g°C\n", freezingF, fToC(freezingF)) // “32°F = 0°C” fmt.Printf("%g°F = %g°C\n", boilingF, fToC(boilingF)) // “212°F = 100°C” } func fToC(f float64) float64 { return (f - 32) * 5 / 9 } 函数 fToC

  • 接收一个 float64 类型的参数,返回转换后的摄氏温度。
  • 通过调用该函数,main 函数实现了温度转换的复用,体现了函数封装和模块化设计的优势。

语言特性