package main
import
(//匯入sdk包()
//格式化的輸入輸出包
"fmt"
//作業系統包
"os"
//匯入mysql資料庫驅動,只需要執行其包的初始化方法,不需要使用其api
//匯入第三方包,儲存路徑在gopath下
)/*定義結構體,用於接收資料庫的資料*/
type person struct
/*錯誤處理函式
引數:傳入錯誤、出錯的場景
只要有錯誤,就列印錯誤並暴力退出程式
*/func
handleerror
(err error
, when string)}
/*程式入口*/
func
main()
}gameover:
//列印並換行
fmt.
println
("game over")}
/*獲取並列印所有人員資訊*/
func
getallpeople()
else}/*
從mysql核心資料庫拿取人員資訊
返回值:
people person 預定義的person切片容器
*/func
getpeoplefrommysql()
(people [
]person)
/*從redis快取獲取獲取人員資訊
返回值:【很多的】人員資訊字串,使用【切片容器string】返回
*/func
getpeoplefromredis()
(strs [
]string
)/*快取查詢結果到redis*/
func
cachepeople2redis
(people [
]person)
//執行redis命令:expire people 20,使people在20秒後過期
_, err := conn.do(
"expire"
,"people",20
)handleerror
(err,
"@ expire people 60"
) fmt.
println
("快取people成功!"
)}
二叉堆實現二
堆可以視為一棵完全二叉樹,樹的每一層都是被填滿的,最後一層可能除外,所以堆可以用陣列來表示。對於陣列中任意位置 i上的元素,其左兒子在位置 i 2 1 其右兒子在位置 i 2 2 上,其父節點在位置 i 1 2 1處。二叉堆有兩種 最大堆和最小堆。最大堆中,除根結點外 其無父結點 每個結點的關鍵字都...
驅動安裝實現(二)
前一段時間一直在使用,installsheild 2009 製作安裝包。很可惜沒有成功!本以為 is2009 是乙個完全視覺化的安裝工具,結果發現網上的例子包括了很多機器碼,自己感覺很麻煩就放棄了。應該說 is2009 更加想乙個 mfc整合的程式設計環境。後來改用 inno 來製作安裝包,感覺 i...
C 實現反射(二)
新部落格鏈結 找了一些資料,參考了 c 反射 開源中國 這篇,做了一些修改和簡化,成為了 version3.思路其實並不複雜,可以進行反推 反射是根據類名動態生成類,如果我們有乙個全域性的對映關係,可以從類名得到類的相關資訊 classinfo,包括類的建構函式,那麼我們便能實現這一點。所以我們需要...