Go参考手册
错误 | errors
错误 | errors
- import "errors"
- 概述
- 索引
- 示例
概述
Errors 包实现了处理错误的函数。
示例
package main
import (
"fmt"
"time"
)
//MyError是一个包含时间和消息的错误实现。
type MyError struct {
When time.Time
What string
}
func (e MyError) Error() string {
return fmt.Sprintf("%v: %v", e.When, e.What)
}
func oops() error {
return MyError{
time.Date(1989, 3, 15, 22, 30, 0, 0, time.UTC),
"the file system has gone away",
}
}
func main() {
if err := oops(); err != nil {
fmt.Println(err)
}
}
索引
- func New(text string) error
示例
Package New New (Errorf)
文件包
errors.go
func New(查看源代码)
func New(text string) error
New 返回格式为给定文本的错误。
示例
package main
import (
"errors"
"fmt"
)
func main() {
err := errors.New("emit macho dwarf: elf header corrupted")
if err != nil {
fmt.Print(err)
}
}
示例(Errorf)
fmt 包的 Errorf 函数使我们可以使用包的格式化功能来创建描述性错误消息。
package main
import (
"fmt"
)
func main() {
const name, id = "bimmler", 17
err := fmt.Errorf("user %q (id %d) not found", name, id)
if err != nil {
fmt.Print(err)
}
}
错误 | errors相关
Go 是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性。它也打算成为现代的,支持网络与多核计算的语言。要满足这些目标,需要解决一些语言上的问题:一个富有表达能力但轻量级的类型系统,并发与垃圾回收机制,严格的依赖规范等等。这些无法通过库或工具解决好,因此Go也就应运而生了。
主页 | https://golang.org/ |
源码 | https://go.googlesource.com/go |
发布版本 | 1.9.2 |