• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
留白
世人慌慌张张,不过图碎银几两
博客园    首页    新随笔       管理    订阅  订阅
2020年7月17日
go tour --Errors
摘要: Go程序用error表示错误状态。 error类型是一个类似fmt.Stringer的内置接口 type error interface { Error() string } (与fmt.Stringer, fmt包在打印值错误的值时查找error接口。) 函数通常返回一个error,调用代码应该通 阅读全文
posted @ 2020-07-17 17:35 留白s 阅读(150) 评论(0) 推荐(0)
go tour --Exercise: Stringers
摘要: package main import ( "fmt" "strings" "strconv" ) type IPAddr [4]byte func (ip IPAddr) String() string{ array := make([]string, len(ip)) for i, b := r 阅读全文
posted @ 2020-07-17 16:31 留白s 阅读(216) 评论(0) 推荐(0)
go tour --Stringers
摘要: Stringers 类似java 中的toString type Stringer interface { String() string } Stringer是一种可以将自身描述为字符串的类型。fmt包(和许多其他包)寻找这个接口来打印值。 package main import "fmt" ty 阅读全文
posted @ 2020-07-17 16:30 留白s 阅读(156) 评论(0) 推荐(0)
go tour --Type assertions
摘要: 类型断言提供对接口值的底层具体值的访问。 t := i.(T) 该语句断言接口值i持有具体类型T,并将底层T值赋给变量t。 如果i不持有T,该语句将触发恐慌panic。 要测试接口值是否包含特定类型,类型断言可以返回两个值:底层值和报告断言是否成功的布尔值。 t, ok := i.(T) 如果i持有 阅读全文
posted @ 2020-07-17 16:06 留白s 阅读(129) 评论(0) 推荐(0)
go tour --方法值接收器和指针接收器区别
摘要: 有两个理由使用指针接收器 第一个是为了让方法可以修改它的接收器指向的值。 第二种方法是避免在每次方法调用时复制值。例如,如果接收方是一个大的结构体,这可能会更有效率。 通常,给定类型上的所有方法都应该具有值或指针接收器,但不能两者混合。(我们将在接下来的几页中看到原因。) 接口 接口是定义的一组方法 阅读全文
posted @ 2020-07-17 15:24 留白s 阅读(471) 评论(0) 推荐(0)
go tour --函数,方法值参数与指针参数区别
摘要: 函数 值参数是值传递 package main import ( "fmt" ) type Vertex struct { X, Y float64 } func update(v Vertex){ v.X = 2 v.Y = 2 } func main() { v := Vertex{3, 4} 阅读全文
posted @ 2020-07-17 11:23 留白s 阅读(173) 评论(0) 推荐(0)
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3