Go语言中错误处理实例分析
作者:不是JS 发布时间:2024-02-14 18:43:10
标签:Go语言,错误,处理
本文实例讲述了Go语言中错误处理的方法。分享给大家供大家参考。具体分析如下:
错误是可以用字符串描述自己的任何东西。 主要思路是由预定义的内建接口类型 error,和其返回返回字符串窜的方法 Error 构成。
type error interface {
Error() string
}
当用 fmt 包的多种不同的打印函数输出一个 error 时,会自动的调用该方法。
package main
import (
"fmt"
"time"
)
type MyError struct {
When time.Time
What string
}
func (e *MyError) Error() string {
return fmt.Sprintf("at %v, %s",
e.When, e.What)
}
func run() error {
return &MyError{
time.Now(),
"it didn't work",
}
}
func main() {
if err := run(); err != nil {
fmt.Println(err)
}
}
希望本文所述对大家的Go语言程序设计有所帮助。
0
投稿
猜你喜欢
- 此程序为先调用opencv自带的人脸检测模型,检测到人脸后,再调用我自己训练好的模型去识别人脸,使用时更改模型地址即可#!usr/bin/e
- 话不多说,直接上代码运行截图 1.语音合成------->执行:结果:输入要转换的内容,程序直接帮你把转换好的mp3文件输出
- 在django的views中不论是用类方式还是用装饰器方式来使用rest框架,django_rest_frame实现权限管理都需要两个东西的
- 数据库缓存为了使用数据库表作为缓存后端,首先在数据库中运行这个命令以创建缓存表:python manage.py createcacheta
- 在上一篇文章里已经写过如何安装python和在eclipse中配置python插件,这篇就不多说了,开始入门。1.先新建一个python工程
- 海量数据库的查询优化及分页算法方案 原出处不详 摘自:www.21php.com 随着“ * ”建设的逐步深入和 * 信息化的高
- 背景:有时候我们需要在服务器上同时运行多个程式,但是却需要一个一个的打开,比较费时间,而且一旦服务器重启后,不懂程式运行的人受限于环境及代码
- 本文实例讲述了Windows下安装Django框架的方法。分享给大家供大家参考,具体如下:在idea上运行Python项目时,出现了如下错误
- 本文记录了mysql安装详细教程,分享给大家。一、版本的选择之前安装的Mysql,现在才来总结,好像有点晚,后台换系统了,现在从新装上Mys
- 前几天写了Mysql跨表更新的一篇总结,今天我们看下跨表删除。 在Mysql4.0之后,mysql开始支持跨表delete。 Mysql可以
- 具体代码如下所述:import sysfrom PySide2.QtGui import *from PySide2.QtCore impo
- 一、创建元组tup1 = ('physics', 'chemistry', 1997, 2000);tup2
- 简介增量备份是指在一次全备份或上一次增量备份后,以后每次的备份只需备份与前一次相比增加或者被修改的文件。这就意味着,第一次增量备份的对象是进
- 1. mysql_where子句_聚合函数# ### part 单表查询""" select ... from
- <!-- -----------[test]表生成脚本---------------
- 本文实例讲述了彻底删除thinkphp3.1案例blog标签的方法。分享给大家供大家参考。具体方法如下:thinkphp3.1框架中的案例b
- 我们首先来看下实例代码:function sig_handler($sig){ print("handled sig:
- 今天给大家介绍一个十分好用的Python模块,用来给数据集做一个初步的探索性数据分析(EDA),有着类似Tableau的可视化界面,我们通过
- 程序测试是展现BUG存在的有效方式,但令人绝望的是它不足以展现其缺位。——艾兹格·迪杰斯特拉(Edsger W. Dijkstra)算法审查
- 在开发中中我们经常会使用到数据库连接池,比如dbcp数据库连接池,本章将讲解java连接dbcp数据库库连接池的简单使用。开发工具myecl