您的位置:首页 > 编程语言 > Go语言

win7下安装32位GoSublime Package

2013-04-13 12:16 295 查看
win7下安装32位GoSublime Package

1 安装sublime Text 2

1) 下载地址:http://www.sublimetext.com/2

本文安装的是32位的 Sublime Text 2.0.1 Setup.exe

2) 默认安装即可

3) 破解(sublime本身是免费软件不破解也能用,破解方法摘自网络)

十六进制编辑器ultraedit和WinHex都可以,我用的ultraedit,这里以WinHex为例。

sublime_text.exe默认位置C:\Program Files (x86)\Sublime Text 2\sublime_text.exe

a.将sublime_text.exe备份一下

b.用 WinHex十六进制编辑器打开sublime_text.exe文件,跳到 000CBB70 那一行,将该行的 8A C3 修改为 B0 01 然后保存即可,参见下图。

c.修改完后保存即可破解注册成功,重启下sublime即可。

d.如果修改后程序无法运行或破解失败,请用备份文件恢复。





2 安装Package Control

下载http://sublime.wbond.net/Package%20Control.sublime-package

打开sublime ,preferences->browse Package->返回上一级Installed Packages,将下载的东东拷进去就可以了,注意是浏览器中文件拷贝!

重启 Sublime Text 2,如果在 Preferences -> Package Settings中见到Package Control这一项,就说明安装成功了

3 安装GoSublime Package插件

这个插件的源代码在 https://github.com/DisposaBoy/GoSublime,不需要手工下载,按照下面的操作即可完成安装。

GoSublime快捷键:https://github.com/DisposaBoy/GoSublime/blob/master/USAGE.md

ctrl+Shift+P 打开Package Control ,然后输入 pcip (即“Package Control: Install Package”的缩写),

在随后出现的界面输入GoSublime,点击出现的项,就可以成功安装GoSublime了。

开始体验GoSublime带来的自动提示吧!

修改历史:

2013.04.13 初稿

变量声明

官方DOC: http://golang.org//spec#Variable_declarations

Go中使用全新的关键字var来声明变量。var我们并不陌生,在Javascript 和C#中均有出现。不同的是Go和C#中变量属于强类型,在声明变量后就不允许改变其数据类型。

声明变量有多种形态:

var a int //声明一个int类型的变量

var b struct { //声明一个结构体

name string

}

var a = 8 //声明变量的同时赋值,编译器自动推导其数据类型

var a int = 8 //声明变量的同时赋值

var { //批量声明变量,简洁

a int

b string

}

变量初始化

变量的初始化工作可以在声明变量时进行初始化,也可以先声明后初始化。此时var关键字不再是必须的。

初始化变量有多种方式,每种方式有不同的使用场景:

在方法中声明一个临时变量并赋初值

> var tmpStr = “”

> var tmpStr string = “”

> tmpStr :=””

全局中已声明变量直接赋值

> tmpStr = “<body>”

我们看到有此两种方式:

var name [type] = value

如果不书写 type ,则在编译时会根据value自动推导其类型。

name := value

这里省略了关键字var,我很喜欢这种方式(可以少写代码,而没有任何坏处)。 但这有需要注意的是“ :=” 是在声明和初始化变量,因此该变量必须是第一次出现,如下初始化是错误的。但是要注意赋值时要确定你想要的类型,在Go中不支持隐式转换的。如果是定义个float64类型的变量,请写为 v1 :=8.0而不是v1 :=8 。

var a int

a := 8

//我刚开始时老出现这种错误,一直将 “:= ” 当作 一般赋值语句处理

思考问题

初始化语句,在编译器上是如何进行自动类型推导的。一些字面常量是如何归类的?

如 8 → int , 8.0 → float64

package main

import (

"fmt"

"reflect"

)

func main(){

var v1 int = 8

var v2 byte = 8

v3 := 8

v4 := 8.0

fmt.Printf("v1 type :%s\n",reflect.TypeOf(v1)) //int

fmt.Printf("v2 type :%s\n",reflect.TypeOf(v2)) //uint8

fmt.Printf("v3 type :%s\n",reflect.TypeOf(v3)) //int

fmt.Printf("v4 type :%s\n",reflect.TypeOf(v4)) //float64

}

官方文档: http://golang.org/ref/spec#Constant_expressions

const a = 2 + 3.0          // a == 5.0   (untyped floating-point constant)
const b = 15 / 4           // b == 3     (untyped integer constant)
const c = 15 / 4.0         // c == 3.75  (untyped floating-point constant)
const Θ float64 = 3/2      // Θ == 1.0   (type float64, 3/2 is integer division)
const Π float64 = 3/2.     // Π == 1.5   (type float64, 3/2. is float division)
const d = 1 << 3.0         // d == 8     (untyped integer constant)
const e = 1.0 << 3         // e == 8     (untyped integer constant)
const f = int32(1) << 33   // f == 0     (type int32)
const g = float64(2) >> 1  // illegal    (float64(2) is a typed floating-point constant)
const h = "foo" > "bar"    // h == true  (untyped boolean constant)
const j = true             // j == true  (untyped boolean constant)
const k = 'w' + 1          // k == 'x'   (untyped rune constant)
const l = "hi"             // l == "hi"  (untyped string constant)
const m = string(k)        // m == "x"   (type string)
const Σ = 1 - 0.707i       //            (untyped complex constant)
const Δ = Σ + 2.0e-4       //            (untyped complex constant)
const Φ = iota*1i - 1/1i   //            (untyped complex constant)

const ic = complex(0, c) // ic == 3.75i (untyped complex constant)

const iΘ = complex(0, Θ)   // iΘ == 1.5i   (type complex128)

const Huge = 1 << 100

// Huge == 1267650600228229401496703205376 (untyped integer constant)

const Four int8 = Huge >> 98  // Four == 4      (type int8)


^1 // untyped integer constant, equal to -2

uint8(^1)  // illegal: same as uint8(-2), -2 cannot be represented as a uint8
^uint8(1)  // typed uint8 constant, same as 0xFF ^ uint8(1) = uint8(0xFE)
int8(^1)   // same as int8(-2)
^int8(1)   // same as -1 ^ int8(1) = -2


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: