青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

戰(zhàn)魂小筑

討論群:309800774 知乎關(guān)注:http://zhihu.com/people/sunicdavy 開源項(xiàng)目:https://github.com/davyxu

   :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  257 隨筆 :: 0 文章 :: 506 評(píng)論 :: 0 Trackbacks

append, map, len不是關(guān)鍵字

他們其實(shí)還是類庫(kù)功能, 都在buildin包里的, 系統(tǒng)默認(rèn)給你做了個(gè)

  1. import(
  2. . "buildin"
  3. )

將buildin的包內(nèi)容都映射到全局而已, 其實(shí)你也可以用自己的包這么做

打印的另一種寫法

想跟腳本一樣調(diào)試打印數(shù)據(jù)么?

  1. println("hello world")

無需包含任何包, 因?yàn)樗赽uildin包里

iota不是黑科技

這是在buildin包里的定義

  1. // iota is a predeclared identifier representing the untyped integer ordinal
  2. // number of the current const specification in a (usually parenthesized)
  3. // const declaration. It is zero-indexed.
  4. const iota = 0 // Untyped int.

其實(shí)go是有泛型概念的

想想map和數(shù)組的定義 
只是泛型沒有開放給用戶用而已(只許XX放火,不許XX點(diǎn)燈)

map是支持多個(gè)key的, 而且很方便

還在為多個(gè)key轉(zhuǎn)id的復(fù)雜算法而頭疼么?

  1. type myKey struct{
  2. number int
  3. str string
  4. }
  5. func main(){
  6. t := map[ myKey] int {
  7. myKey{ 2, "world"}: 1,
  8. }
  9. fmt.Println(t[myKey{2, "world"}])
  10. }
  11. 輸出: 1

枚舉是可以轉(zhuǎn)成string的

默認(rèn)定義一個(gè)枚舉

  1. type MyConst int
  2. const (
  3. MyConst_A MyConst = iota
  4. MyConst_B MyConst = iota
  5. )
  6. func main(){
  7. fmt.Println(MyConst_A)
  8. }

輸出: 0 
如果我們想自動(dòng)化輸出MyConst_A字符串時(shí) 
就需要使用golang的一個(gè)工具鏈:golang.org/x/tools/cmd/stringer 
將其下載, 編譯成可執(zhí)行工具后, 對(duì)代碼進(jìn)行生成 
生成的代碼會(huì)多出一個(gè)xx_string.go 
里面就是枚舉的String()string 函數(shù)

臨時(shí)轉(zhuǎn)換一個(gè)接口并調(diào)用的方法

  1. type love struct{
  2. }
  3. func (self*love)foo(){
  4. fmt.Println("love")
  5. }
  6. func main(){
  7. var chaos interface{} = new(love)
  8. chaos.(interface{
  9. foo()
  10. }).foo()
  11. }

Golang的receiver實(shí)際上就是this的變種實(shí)現(xiàn)

  1. func( self*MyStruct) foo( p int ){
  2. }

寫不慣receiver的寫法? 如果這樣改下呢?

  1. func foo( self *MyStruct, p int ){
  2. }

所以為什么說Golang還是一個(gè)C語言嘛

關(guān)于內(nèi)存分配…

  • new 傳入Type類型, 返回*Type類型
  • make 可以在分配數(shù)組時(shí)設(shè)置預(yù)分配大小, new不可以
  • make 能分配數(shù)組,map, 但不能分配結(jié)構(gòu)體和原始類型
  • new 能分配數(shù)組, map, 結(jié)構(gòu)體和原始類型等的所有類型
  • &Type等效于new
  • 切片不需要分配內(nèi)存(make,new), 直接聲明就可以了…

Golang的反射無法通過一個(gè)類型名, 創(chuàng)建其實(shí)例

C#有Assembly概念, 可以在一個(gè)Assembly里搜索, 創(chuàng)建實(shí)例

Golang是靜態(tài)類型語言, 如果需要, 只能注冊(cè)你需要?jiǎng)?chuàng)建的結(jié)構(gòu)體, 然后將注冊(cè)好的map用于創(chuàng)建

Golang可以替換Python來進(jìn)行復(fù)雜的工具流程處理

如果你需要跨平臺(tái)的工具流程處理, 對(duì)Python不熟悉, 可以使用

  1. go run yourcode.go 參數(shù)1 參數(shù)2

方式來進(jìn)行工具處理 
覺得慢, 可以編譯成可執(zhí)行文件

這樣做的好處: 如果有些類庫(kù)本身就是go寫的, Python想使用是很麻煩的, 而Golang來寫則輕而易舉

例子: 通過go的protobuf庫(kù), 對(duì)一些文件進(jìn)行處理

Golang可以自動(dòng)持有方法的接收者實(shí)例

  1. type myType struct{
  2. }
  3. func (self*myType) foo( p int){
  4. fmt.Println("hello", p )
  5. }
  6. func main(){
  7. var callback func( int )
  8. ins := new(myType)
  9. callback = ins.foo
  10. callback( 100 )
  11. }

做過lua的C++代碼綁定的童鞋都清楚: lua只支持外部靜態(tài)或者全局函數(shù)調(diào)用 
如果要進(jìn)行C++類成員函數(shù)調(diào)用時(shí), 要自己處理this和成員函數(shù) 
這種技巧因?yàn)樵缙鹁幾g器的虛表不同平臺(tái)實(shí)現(xiàn)細(xì)節(jié)不統(tǒng)一需要專門處理 
后面跨平臺(tái)虛表統(tǒng)一后, 類成員函數(shù)的調(diào)用寫法也是很惡心復(fù)雜的 
但是Golang的小白式用法, 直接吊打C++, 甚至C#復(fù)雜的delegate

LiteIDE篇: 多開秘籍

  • 找到 菜單->查看->選項(xiàng)->通用->存儲(chǔ)->存儲(chǔ)設(shè)置到本地ini文件

  • 關(guān)閉LiteIDE

  • 復(fù)制LiteIDE整個(gè)目錄, 命名文件夾為你的工程名

  • 每個(gè)工程所在的LiteIDE的配置將是獨(dú)立的, 不會(huì)互相干擾

LiteIDE篇: 測(cè)試程序也是可以調(diào)試的

別以為程序一定要是main開始的才可以調(diào)試

Golang的測(cè)試程序雖然都是一個(gè)個(gè)Test開頭的函數(shù),但執(zhí)行g(shù)o test時(shí), 還是有main入口

在LiteIDE中, 可以在 調(diào)試->開始調(diào)試測(cè)試程序里進(jìn)行測(cè)試程序調(diào)試

LiteIDE篇: 在Windows上可以輸出linux可執(zhí)行文件

go的工具鏈默認(rèn)支持交叉編譯 
在LiteIDE中, 可以通過切換輸出平臺(tái), 輸出不同平臺(tái)的可執(zhí)行文件

posted on 2016-11-02 11:09 戰(zhàn)魂小筑 閱讀(23236) 評(píng)論(1)  編輯 收藏 引用 所屬分類: 工具使用及設(shè)計(jì)Golang

評(píng)論

# re: Go語言的冷知識(shí) 2016-11-22 16:10 思月行云
很實(shí)用,點(diǎn)贊 ^ ^  回復(fù)  更多評(píng)論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美激情一区在线| 激情久久影院| 欧美一区二区免费观在线| 亚洲视频狠狠| 欧美在线资源| 欧美顶级大胆免费视频| 欧美日韩免费在线| 国产亚洲成av人在线观看导航| 国产欧美三级| 亚洲欧洲日产国产网站| 亚洲香蕉成视频在线观看| 久久不射中文字幕| 欧美岛国在线观看| 亚洲图片欧美午夜| 快播亚洲色图| 国产精品久久久久毛片软件 | 亚洲精品中文字幕女同| 亚洲图片在线| 美女视频一区免费观看| 国产精品女人久久久久久| 在线日韩av片| 性欧美在线看片a免费观看| 欧美jizzhd精品欧美喷水| 一本一本a久久| 巨胸喷奶水www久久久免费动漫| 欧美午夜精品一区二区三区| 在线成人黄色| 欧美在线国产| 99精品99| 欧美激情一区二区三区在线| 国产精品中文在线| 亚洲私人影院在线观看| 亚洲国产精品日韩| 香蕉久久夜色精品国产| 欧美三日本三级少妇三2023| 亚洲国产精品小视频| 久久精品亚洲乱码伦伦中文| 在线亚洲激情| 欧美日本在线| 亚洲精品免费在线观看| 免费观看成人网| 先锋影音久久| 国产欧美日韩精品a在线观看| 一本久道久久综合中文字幕| 欧美成人日本| 久久网站免费| 影音先锋欧美精品| 免费不卡中文字幕视频| 亚洲视频1区| 亚洲大胆av| 性欧美1819sex性高清| 亚洲精品一区二区三区蜜桃久| 久久久不卡网国产精品一区| 国产美女精品| 欧美在线高清| 午夜一区在线| 国产揄拍国内精品对白| 久久久久久久久蜜桃| 欧美一区激情视频在线观看| 国产在线视频欧美| 狂野欧美激情性xxxx| 久久久五月天| 亚洲精品综合久久中文字幕| 亚洲国产精品www| 欧美精品xxxxbbbb| 亚洲综合国产激情另类一区| 亚洲色诱最新| 国产亚洲成精品久久| 久久天堂国产精品| 免费一区视频| 国产精品99久久不卡二区| 亚洲影院在线| 伊大人香蕉综合8在线视| 欧美激情在线播放| 欧美视频在线免费看| 欧美一站二站| 久久三级视频| aaa亚洲精品一二三区| 在线综合亚洲欧美在线视频| 国产视频精品xxxx| 亚洲成人资源| 国产精品久久久久一区| 久久久最新网址| 欧美区二区三区| 久久9热精品视频| 麻豆精品传媒视频| 亚洲一区二区成人在线观看| 欧美制服丝袜| 亚洲视频第一页| 久久国产精品72免费观看| 亚洲精品护士| 性欧美暴力猛交69hd| 亚洲毛片在线观看| 午夜在线精品偷拍| 在线一区二区三区四区五区| 久久精品av麻豆的观看方式| 一本久久知道综合久久| 久久av一区二区| 亚洲婷婷在线| 久久视频国产精品免费视频在线| 亚洲小说欧美另类婷婷| 美女国内精品自产拍在线播放| 亚洲欧美日本国产专区一区| 久久在线视频| 久久爱www.| 国产精品久久久久久久久免费| 免费观看成人| 国产午夜精品视频| 一区二区三区色| 亚洲欧洲精品一区二区三区不卡 | 久久久久欧美精品| 欧美精品一区二区三区蜜桃 | 久久久久青草大香线综合精品| 欧美经典一区二区三区| 久久一区中文字幕| 国产精品丝袜91| 日韩视频中文字幕| 亚洲毛片一区二区| 美女图片一区二区| 美女脱光内衣内裤视频久久网站| 国产精品久久久久久久午夜片| 亚洲人成网站999久久久综合| 伊人成人在线视频| 久久精品在线观看| 久久夜色精品一区| 国产区在线观看成人精品| 99re视频这里只有精品| 夜夜嗨一区二区三区| 欧美精品久久久久a| 亚洲电影激情视频网站| 亚洲福利视频一区二区| 久久综合五月| 免费欧美在线视频| 亚洲第一二三四五区| 久久久不卡网国产精品一区| 久久久久久高潮国产精品视| 国产手机视频精品| 欧美中文字幕第一页| 久久偷看各类wc女厕嘘嘘偷窃| 黑丝一区二区| 欧美α欧美αv大片| 亚洲人成亚洲人成在线观看图片 | 亚洲日本精品国产第一区| 亚洲精品欧美专区| 欧美日本在线视频| 日韩西西人体444www| 亚洲专区免费| 国产婷婷精品| 久久夜色撩人精品| 亚洲黄色高清| 亚洲免费在线视频一区 二区| 国产精品视屏| 久久在精品线影院精品国产| 亚洲国产欧美不卡在线观看| 99精品欧美一区二区三区综合在线| 欧美精品久久99久久在免费线| 夜夜嗨av一区二区三区免费区| 亚洲综合丁香| 伊人久久噜噜噜躁狠狠躁| 蜜桃精品久久久久久久免费影院| 亚洲人被黑人高潮完整版| 欧美一区二区三区久久精品| 黄色成人av在线| 欧美人与禽性xxxxx杂性| 久久九九久精品国产免费直播| 欧美激情精品久久久久久免费印度 | 欧美一区二区三区视频在线观看| 狠狠色丁香婷婷综合| 欧美激情精品| 欧美尤物一区| 91久久精品一区二区别| 欧美在线网站| 亚洲免费福利视频| 国产亚洲第一区| 欧美日韩一级片在线观看| 欧美一区二区三区视频| 亚洲日本一区二区三区| 久久精品亚洲精品国产欧美kt∨| 亚洲美女一区| 国内成人精品一区| 欧美日韩综合一区| 六月丁香综合| 欧美在线一级视频| 亚洲午夜羞羞片| 亚洲精品国精品久久99热| 久久在精品线影院精品国产| 亚洲图片欧洲图片av| 亚洲黄色尤物视频| 国产无遮挡一区二区三区毛片日本| 欧美精品v国产精品v日韩精品| 欧美自拍偷拍午夜视频| 在线亚洲免费视频| 亚洲三级视频在线观看| 欧美成人午夜激情| 美玉足脚交一区二区三区图片| 久久精品中文| 欧美在线看片| 欧美中文字幕久久| 午夜精品久久久| 亚洲午夜视频在线观看|