为什么要从Go中的类型调用func?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么要从Go中的类型调用func?相关的知识,希望对你有一定的参考价值。
我正在学习围棋,并且在进行“围棋之旅”时,发现了以下代码:
package main
import (
"fmt"
"time"
)
func main()
t := time.Now()
switch
case t.Hour() < 12:
fmt.Println("Good morning!")
case t.Hour() < 17:
fmt.Println("Good afternoon.")
default:
fmt.Println("Good evening.")
我想知道我在做什么,所以我打开了有关“时间”包的文档。
根据文档,在执行t := time.Now()
时,我得到了类型struct Time(https://golang.org/pkg/time/#Now),但是,为了获得小时,我们执行了t.Hour()
。我会理解,如果t是对象Time和Hour的实例,则是该对象的方法,但这不是oop,并且t是一种类型,我希望像time.Hour(t)
这样调用它来获取小时。
您能给我一些t.Hour()
为何起作用的信息吗?
谢谢!/米格尔
答案
t
不是类型,它是一个持有类型time.Time
的结构值的变量。 t.Hour()
用Time.Hour()
接收器调用t
方法。
以上是关于为什么要从Go中的类型调用func?的主要内容,如果未能解决你的问题,请参考以下文章