言語VAR文ちゃん、マップを移動し、ポインタ、状況に注意を払います

タイムアウト時に問題の処理で発生します。

問題のコード

パッケージメイン

インポート(

  "FMT" 

  "時間" 


FUNCメイン(){ 

    VAR CHちゃんストリング
    行くFUNC(){ 
    - CH < "結果"は
    }()
    {を選択
    = <-CH:ケースRES 
        fmt.Println(RES)を
        戻り
    ケース<-time.After(time.Second * 5):
        fmt.Println( "タイムアウト")
    } 
}

 エラーの原因: - time.After(time.Second * 5)このブランチVAR CHちゃん文字列のスペースの無い配分CH、それはケース<を実行してきたので。=(チャン文字列)を作る:ソリューションが追加されます:CH =作る(ちゃん文字列)またはVAR CHちゃんの文字列を削除し、CHを追加します

考えます:

  varがそれにスペースが割り当てられたときに文ちゃん、マップにポインタを利用する必要がある、または使用することはできません

比較マップの実現:

VaRのKLマップ[文字列]文字列
KL [ "文字列"] = "STK" 
fmt.Println(KL)//出现错误

するvarカラットマップ[文字列]文字列
カラット=メイク(マップ[文字列]文字列)
カラット[ "文字列"] = "strin" 
fmt.Println(カラット)//正确

 

おすすめ

転載: www.cnblogs.com/MyUniverse/p/11225145.html