【Golang - 90天从新手到大师】Day11 - 包的管理
// 定义一个包的声明,包名为 "mathutil"
package mathutil
// 导入其他包
import (
"errors"
"math"
)
// 定义一个名为 IntMin 的常量
const IntMin = math.MinInt64
// 定义一个名为 ErrNegativeSqrt 的错误
var ErrNegativeSqrt = errors.New("cannot Sqrt negative number")
// 定义一个名为 Sqrt 的函数,计算一个非负数的平方根
func Sqrt(x float64) (float64, error) {
if x < 0 {
return 0, ErrNegativeSqrt
}
// 省略实际的计算平方根的代码
return 0, nil
}
// 使用该包的代码示例
package main
import (
"fmt"
"mathutil"
)
func main() {
// 使用 Sqrt 函数
fmt.Printf("Sqrt(2) = %v\n", mathutil.Sqrt(2))
// 处理可能的错误
if _, err := mathutil.Sqrt(-1); err != nil {
fmt.Printf("Sqrt(-1) error: %v\n", err)
}
}
这个代码示例展示了如何定义一个包,如何导入其他包,如何定义常量和变量,以及如何编写可能返回错误的函数。同时,它也展示了如何在主函数中使用这个包,并处理可能发生的错误。这是学习Go语言的一个很好的起点。
评论已关闭