package main

import (
	"fmt"
)

// 在函数声明时, 在其函数名之前放上一个变量, 即是一个方法
// 附加的变量被称为"接受者"

// 这个函数会被附加到这个"接受者"所在的类型上
// 可以说就是为这个"接受者"所在的类型创建了一个独占的函数

//⚠️注意内置的这些 int float32 这些内置的类型不能被传入"接受者"
//  我试了试，关键字应该都是不能被type创建类型的

type myInt int

var i myInt

// MethodStart 此时 MethodStart 函数就被绑定给了所有的myInt类型的值使用, 这就是myInt类型的一个方法
func (i myInt) MethodStart() {
	fmt.Printf("(%T, %[1]v)\n", i)
}

// Point 下面是个例子
type Point1 struct{ X, Y float64 }
