Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 下面的代碼主要是看DES密碼編譯演算法時,發覺能力有限只會一點點,那就讓我會的那一點與base64加密用在一起而已。代碼如下:package xlibimport ("crypto/md5""fmt""io")func XEncode(b, key []byte) (r_buf []byte) {l := len(key)if l%64 != 0 || l == 64
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。go 語言的type 類型方法定義如下:func (p mytype) funcname(q type) (r,s type) { return 0,0}本質上這就是一種文法糖,方法調用如下:instance.method(args) -> (type).func(instance, args)instance 就是Reciever.左邊的稱為 Method Value,右邊則是 Method
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。/**Go 語言中實現優雅的停止程式主goroutine監聽作業系統訊息,收到系統停止訊息後關閉server的chan,所有子協程檢測到chan關閉,則全部退出**/package mainimport ("log""net""os""os/signal""sync""syscall""time")// An
Time of Update: 2015-06-17
這是一個建立於
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Wide 是什麼Wide 是一個基於 Web 的 Go 語言團隊 IDE。線上開發:開啟瀏覽器就可以進行開發、全快速鍵智能提示:代碼自動完成、查看錶達式、編譯反饋、Lint即時運行:極速編譯、即時結果輸出團隊協同:統一開發環境,分布式開發,代碼分享DevOps!大家可以使用我們提供的 Wide 線上服務,也可以自行下載並在本地環境運行 Wide 私服!PlaygroundWide
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 對於語言設計之爭, 唯一需要牢記的一句話是: 如果把 C 變成 C++, 那麼 C 就消失了。 Go 是一個輕量級的簡潔的支援並發的語言, 可以用於探索性個人項目, 這是我想學這門語言的主要原因。 對於有一定編程經驗的人來說, 學習一種新語言的方式是, 先概覽下語言特性, 然後編寫一個中等規模的程式, 儘可能地運用到大部分重要特性。 下面的程式用於計算一個目錄下所有檔案或目錄的大小。
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。go語言實現http伺服器時如果處理靜態檔案,需要用到http.ServeFile:func ServeFile(w ResponseWriter, r *Request, name string) { dir, file := filepath.Split(name) serveFile(w, r, Dir(dir), file,
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。在Go語言中,function被視為一種類型,描述了一組相同簽名和傳回值的函數。既然是一種類型,那麼我們就可以把function類型當作普通的類型來操作,如下面的程式碼片段。package mainimport ("fmt")type F func()type FS []Ffunc main() {c := FS{func() { fmt.Print("hello ") }, func() {
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。在Go語言中,可以在介面A中組合其它的一個或多個介面(如介面B、C),這種方式等價於在介面A中添加介面B、C中聲明的方法。//介面中可以組合其它介面,這種方式等效於在介面中添加其它介面的方法type Reader interface {read()}type Writer interface {write()}//定義上述兩個介面的實作類別type MyReadWrite struct{}func (mrw
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。為類型添加方法package mainimport ("fmt")type Integer intfunc (a Integer) Less(b Integer) bool {return a < b}func main() {var a Integer = 1if a.Less(2) {fmt.Println("Less true.")}}結果輸出:Less
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Go語言中struct的屬性可以沒有名字而只有類型,使用時類型即為屬性名稱。(因此,一個struct中同一個類型的匿名屬性只能有一個)type PersonC struct {id intcountry string}//匿名屬性type Worker struct
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1. 變數1.1 變數聲明Go 同其他語言不同的地方在於變數的類型在變數名的後面。不是:int a,而是 a int。當定義了一個變數,它預設賦值為其類型的 null 值。這意味著,在 var a int後,a 的值為 0。而 var s string,意味著 s 被賦值為零長度字串,也就是 ""。變數有兩種聲明方式。第一種使用var關鍵字聲明一個變數,再給這個變數賦值。func main() {var a
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 Redis的Go語言驅動已經很成熟了,用redigo弄了個例子。package main //Redis測試//author:Xiong Chuan Liang//date:2015-3-5import ("fmt""time""log""github.com/garyburd/redigo/redis")func main(){fmt.Println(
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Go語言中append的功能十分強大,使用它可以使很多功能的實現變得更加簡潔。以下為簡單對比:.將一個slice插入到另一個slice的指定位置:不使用append:func insertSliceAtIndex(slice_origin []int, slice_to_insert []int,insertIndex int) (result []int, err error) {if insertIndex > len(
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1 C++ C++定義的基本類型包括算術類型和void類型。算術類型分為整型(包括字元和布爾型)和浮點型,如下表所示: C++11新增了char16_t,char32_t(最小分別為16、32位的Unicode字元型),long
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。因為單位業務需要(據說是http://www.oschina.net/p/docker 這個方向),最近開始學go語言。google做這門語言的目的在於代替部分C/C++在伺服器端開發,這門語言是以C為主幹,模仿java,javascript及C++的基礎上,做了些微創新。個人感覺就是強型別語言版的javascript++。
Time of Update: 2015-06-17
這是一個建立於
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。go語言之json的使用作為先天具有高並發的go語言,經常用於網路傳輸,go語言為我們提供了json的資料封裝,便於資料的交換和解析。下面來看看go語言中的json使用。代碼最為明顯。重要函數func Marshal(v interface{}) ([]byte, error) 編碼成JSON資料func Unmarshal(data []byte, v interface{}) error 將JSON資料解碼package
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。關鍵詞:非入侵式首先我們要知道什麼是入侵式介面,比如定義了介面Person介面:Fight(),Play(),Zhimaoyi(),Zuofan()方法Women介面:Zhimaoyi(),
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Go解析json格式字串Type Info struct{ Name string Age int Address string}將json格式字串解析給struct,只需將struct對象傳給json.Unmarshal()函數JsonStr := `{“name”:”yang”,”age”:24,”address”:”shenzhen”}`Var myInfo