zoukankan      html  css  js  c++  java
  • go语言type使用小技巧

     

    1. import "fmt"  
    2.   
    3. type Rank int   
    4.   
    5. const (  
    6.         Rank001 Rank = iota  
    7.         Rank002  
    8.         Rank003  
    9.         Rank004  
    10. )  
    11.   
    12. var rewards = [...]string{  
    13.         "奖励1","奖励2","奖励3","奖励4",  
    14. }  
    15.           
    16.   
    17. func (r Rank) getReward() string {  
    18.         return rewards[r]  
    19. }  
    20.   
    21. func main() {  
    22.           
    23.         fmt.Println(Rank003.getReward())  
    24. }  

    通过这样的方式,灵活的将排名与奖励对应,并且“面向对象”,将排名,这个int类型声明为排名,并为其添加成员函数。常规方式在C/C++,Java中,就直接通过2个以维数组惊醒处理,但相对而言,Go语言这种方式,真的很赞!

    go time/time.go 中:

       108	type Weekday int
       109	
       110	const (
       111		Sunday Weekday = iota
       112		Monday
       113		Tuesday
       114		Wednesday
       115		Thursday
       116		Friday
       117		Saturday
       118	)
       119	
       120	var days = [...]string{
       121		"Sunday",
       122		"Monday",
       123		"Tuesday",
       124		"Wednesday",
       125		"Thursday",
       126		"Friday",
       127		"Saturday",
       128	}
       129	
       130	// String returns the English name of the day ("Sunday", "Monday", ...).
       131	func (d Weekday) String() string { return days[d] }
  • 相关阅读:
    poj 3767 I Wanna Go Home (有限制的最短路)
    gcd及扩展gcd
    2012 多校联合比赛第二场
    大整数 问题
    从数据流动看数据结构
    vc/vs常用快捷键
    函数重载
    mysql相关
    xml理解
    编译相关
  • 原文地址:https://www.cnblogs.com/lvdongjie/p/6484943.html
Copyright © 2011-2022 走看看