商君

导航

Go Example--方法

package main

import "fmt"

//定义结构体
type rect struct {
	width,height int
}

//定义结构体指针的方法
func (r *rect) area() int {
	return r.width*r.height
}

//定义结构体的方法
func (r rect)perim() int {
	return 2*r.width+2*r.height
}

func main()  {
	//Go 自动处理方法调用时的值和指针之间的转化
	r := rect{width:10,height:5}
	fmt.Println("area:",r.area())
	fmt.Println("perim:",r.perim())

	rp := &r
	fmt.Println("area:",rp.area())
	fmt.Println("perim:",rp.perim())
}

posted on 2018-10-16 15:53  漫步者01  阅读(149)  评论(0编辑  收藏  举报