
GO语言
mChenys
这个作者很懒,什么都没留下…
展开
-
Go语言学习(九)文件操作
1.相关api介绍1.1建立File内存地址api//返回File的内存地址,错误信息,通过os库调用func Create(name string) (file *File, err Error)//返回文件的内存地址,通过os库调用func NewFile(fd int, name string) *File1.2打开文件api//返回File的内存地址,错误信息,通过os库调用func原创 2016-03-27 21:08:09 · 6879 阅读 · 0 评论 -
Go语言学习(十二)面向对象编程-结构体
1.结构体的初始化方式例如自定义一个结构体package mainimport( "fmt")type Rect struct{ //type和struct为关键字 x,y float64 //结构体成员 widh,height float64}func (r *Rect) Area() float64{ return r.width * r.height原创 2016-05-09 22:26:46 · 1905 阅读 · 0 评论 -
Go语言学习(十一)面向对象编程-类型系统
1.类型系统介绍对于面向对象编程的支持Go 语言设计得非常简洁而优雅。简洁之处在于,Go语言并没有沿 袭传统面向对象编程中的诸多概念,比如继承、虚函数、构造函数和析构函数、隐藏的 this 指 针等。 一个典型的类型系统通常包含如下基本内容:基础类型,如 byte 、 int 、 bool 、 float 等; 复合类型,如数组、结构体、指针等; 可以指向任意对象的类型( Any 类型)原创 2016-05-09 21:07:14 · 1212 阅读 · 1 评论 -
Go语言学习(十五)面向对象编程-接口
1.其他语言的接口Go语言的接口并不是其他语言(C++、Java、C#等)中所提供的接口概念。 在Go语言出现之前,接口主要作为不同组件之间的契约存在。对契约的实现是强制的,你 必须声明你的确实现了该接口。为了实现一个接口,你需要从该接口继承:interface IFoo { void Bar();}class Foo implements IFoo { // Java语法原创 2016-05-13 23:15:15 · 1842 阅读 · 0 评论 -
Go语言学习(十四)面向对象编程-可见性
Go语言对关键字的增加非常吝啬,其中没有private、protected、public这样的关键 字。要使某个符号对其他包(package)可见(即可以访问)需要将该符号定义为以大写字母 开头,如:type Rect struct { X, Y float64 Width, Height float64}这样,Rect类型的成员变量就全部被导出了,可以被所有其他引用了Rect原创 2016-05-11 21:32:11 · 1362 阅读 · 0 评论 -
Go语言学习(八)获取命令行参数
部署golang项目时难免要通过命令行来设置一些参数,那么在golang中如何操作命令行参数呢?可以使用flag库和os库。1.flag库的使用Go语言标准库提供了用于快迅解析命令行参数的flag包,大致的使用步骤如下:a.通过flag.String(), flag.Bool(), flag.Int()等方式来定义命令行中需要使用的参数。b.在定义完flag后,通过调用flag.Parse()原创 2016-03-27 12:52:16 · 12848 阅读 · 2 评论 -
Go语言学习(七)闭包和错误处理
1.闭包Go语言中的闭包同样也会引用到函数外的变量。闭包的实现确保只要闭包还被使用,那么被闭包引用的变量会一直存在,例如:package mainimport "fmt"func main(){ var j int = 5 a := func()(func()) { //圆括号中的func()表示返回值是一个func()函数 var i int = 10原创 2016-03-26 20:30:58 · 1490 阅读 · 0 评论 -
Go语言学习(十)bytes包处理字节切片
bytes包提供了对字节切片进行读写操作的一系列函数 字节切片处理的函数比较多,分为基本处理函数,比较函数,后缀检查函数,索引函数,分割函数, 大小写处理函数和子切片处理函数等.1.字节切片基本处理函数api1.1Contains()函数//Contains()函数的功能是检查字节切片b是否包含子切片subslice,如果包含返回true,否则返回false.func Contain原创 2016-04-02 17:04:59 · 11362 阅读 · 1 评论 -
Go语言学习(六)函数
函数1.1函数的定义前面我们已经大概介绍过函数,这里我们用一个最简单的加法函数来进行详细说明:package mainimport ( "fmt" "errors")func main(){ //直接输出会输出2个值 fmt.Println(Add(1,2)) //如下方式可以只输出一个值 v,_ := Add(1,2) fmt.Printl原创 2016-03-26 17:55:38 · 1176 阅读 · 0 评论 -
Go语言学习(五)流程控制语句
Go语言支持如下的几种流程控制语句: 条件语句,对应的关键字为 if 、 else 和 else if ; 选择语句,对应的关键字为 switch 、 case 和 select (将在介绍channel的时候细说); 循环语句,对应的关键字为 for 和 range ; 跳转语句,对应的关键字为 goto 在具体的应用场景中,为了满足更丰富的控制需求,Go语言还添加原创 2016-03-26 15:36:38 · 1962 阅读 · 3 评论 -
Go语言学习(三)枚举和类型
package mainimport "fmt"//1.枚举的使用// 枚举指一系列相关的常量,比如下面关于一个星期中每天的定义。通过上一节的例子,我们// 看到可以用在 const 后跟一对圆括号的方式定义一组常量,这种定义法在Go语言中通常用于定义// 枚举值。Go语言并不支持众多其他语言明确支持的 enum 关键字。// 下面是一个常规的枚举表示法,其中定义了一系列整型常量:co原创 2016-03-23 21:44:07 · 10357 阅读 · 1 评论 -
Go语言学习(二)常量
package mainimport "fmt"//1.定义常量的关键字constconst Pi float64 = 3.14159265358979323846const zero = 0.0 //无类型浮点常量const( size int64 = 1024 eof = -1 //无类型整型常量)const u,v float32 = 0 , 3 //u=0.0,原创 2016-03-23 21:17:37 · 1045 阅读 · 0 评论 -
Go语言学习(一)变量
package main import "fmt"func main() { //程序入口 InitVariable() AssignmentVariable() AnonymousVariable()}/*变量的声明func DeclareVariable(){ // Go语言的变量声明方式与C和C++语言有明显的不同。对于纯粹的变量声明,Go语言引原创 2016-03-23 19:58:56 · 1010 阅读 · 0 评论 -
Go语言学习(四)常用类型介绍
1.布尔类型var v1 boolv1 = true;v2 := (1==2) // v2也会被推导为bool类型2.整型类 型 长度(字节) 值 范 围int8 1 128 ~ 127uint8(即byte)1 0 ~ 255int16 2 32 768 ~ 32 767uint16 2原创 2016-03-26 14:28:29 · 4870 阅读 · 0 评论 -
Go语言学习(十三)面向对象编程-继承
1.匿名组合Go语言也提供了继承,但是采用了组合的方式,所以我们将其称为匿名组合:package mainimport "fmt"//定义基类type Base struct { Name string}//基类相关的2个成员方法func (base *Base) A() { fmt.Println("Base method A called...")}func (原创 2016-05-09 23:34:00 · 3580 阅读 · 0 评论