Tclのproc構文のいくつかのスタイルの違いは何ですか?

StackOverflow https://stackoverflow.com/questions/1611592

  •  05-07-2019
  •  | 
  •  

質問

procの構文がその動作にどのように影響するかを知っていますか。

のコンテキストで

-メモリ消費

-引数の受け渡し

-procのスコープ(ローカル/グローバル)

proc dosomething {} {
   #code here
}

proc dosomething { } {
    #code here
}

proc dosomething {
    #code here
}

proc dosomething args {
     #code here
}

proc ::dosomething {} {
     #code here
}

その他.......

役に立ちましたか?

解決

これらはほとんど同じです:

引数なしでコマンドを定義します

proc dosomething {} {
   #code here
}

上記と同じ、引数なしでコマンドを定義します

proc dosomething { } {
    #code here
}

無効...エラーをスローする必要があります

proc dosomething {
    #code here
}

可変数の引数(つまり、可変引数)を使用してコマンドを定義します

proc dosomething args {
     #code here
}

最上位の名前空間で、引数なしでコマンドを定義します(ほとんどの場合、最初の2つと同じ)

proc ::dosomething {} {
     #code here
}

ローカルプロシージャなどはありません。名前空間内に存在できますが、すべてのプロシージャはグローバルです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top