zoukankan      html  css  js  c++  java
  • Go-结构体

    结构体

    package main
    
    import "fmt"
    
    //类  结构体
    type person struct {
    	name  string
    	age   int
    	hobby string
    }
    
    //方法是作用于特定类型的函数
    func (p person) say() {
    	fmt.Println("ssssssssssssssay!")
    
    }
    
    //指针接收
    func (p *person) ageadd() {
    	p.age++
    
    }
    
    //值接收,P对象复制一份然后在函数中操作,不影响外面的对象P
    func (p person) addage() {
    	p.age++
    }
    
    //构造函数  当结构体比较大的时候,要使用结构体指针,减少程序的内存开销
    func newperson(name string, age int, hobby string) *person {
    	return &person{
    		name:  name,
    		age:   age,
    		hobby: hobby,
    	}
    }
    
    func main() {
    	//声明结构体变量,赋值
    
    	s := newperson("jinwei", 11, "跑步")
    	s.say()
    	fmt.Println(s.age)
    	s.addage()
    	fmt.Println(s.age)
    	s.ageadd()
    	fmt.Println(s.age)
    
    }
    
    
  • 相关阅读:
    2016CCPC长春
    POJ 3974
    CH 1401
    POJ 1426
    hihocoder 1829
    江南OJ 1151
    POJ 3279
    POJ 3349
    POJ 3278
    ZOJ 3983
  • 原文地址:https://www.cnblogs.com/JinweiChang/p/14112069.html
Copyright © 2011-2022 走看看