2015-02-09 66 views
-2

我在读一本书。转到功能语法说明

一个功能就出来了:

FUNC(IP IP)DefaultMask()IPMask此功能

源代码位于净包装内:

func (ip IP) DefaultMask() IPMask { 
    if ip = ip.To4(); ip == nil { 
     return nil 
    } 
    switch true { 
    case ip[0] < 0x80: 
     return classAMask 
    case ip[0] < 0xC0: 
     return classBMask 
    default: 
     return classCMask 
    } 
} 

问题是:什么是(ip IP)

回答

0

这个语法允许你从一个IP类型,类似于成员函数在其他语言中是如何工作的调用DefaultMask():

ip.DefaultMask() 

的(IP IP)基本上代表了“thiscall”的说法。

+1

有关更多信息,请参见https://golang.org/ref/spec#Function_declarations。 – 2015-02-09 03:30:46