zoukankan      html  css  js  c++  java
  • go之构造体方法

    package main
    
    import (
    	"fmt"
    	"math"
    )
    
    type Vertexs struct {
    	X, Y float64
    }
    
    //Abs 方法拥有一个名为 v,类型为 Vertex 的接收者。
    //方法接收者在它自己的参数列表内,位于 func 关键字和方法名之间。
    
    
    func (v Vertexs) Abs() float64 {
    	return math.Sqrt(v.X*v.X + v.Y*v.Y)
    }
    
    func main() {
    	v := Vertexs{3, 4}
    	fmt.Println(v.Abs())
    }
    
    

    方法只是个带接收者参数的函数。

    现在这个 Abs 的写法就是个正常的函数,功能并没有什么变化。

    package main
    
    import (
    	"fmt"
    	"math"
    )
    
    type Verte struct {
    	X, Y float64
    }
    
    func Abs1(v Verte) float64 {
    	return math.Sqrt(v.X*v.Y + v.Y*v.Y)
    }
    
    func main() {
    	v := Verte{3, 4}
    	fmt.Println(Abs1(v))
    }
    
  • 相关阅读:
    分答是什么?
    判定表
    总结
    周结
    第五周周结
    周结
    一周总结(18周)
    一周总结(17周)
    一周总结(16周)
    一周总结(15周)
  • 原文地址:https://www.cnblogs.com/c-x-a/p/11211183.html
Copyright © 2011-2022 走看看