私は次のコードを持っている:Golangコールバック関数で変数を渡す方法は?
func loopThroughDirs(path string, fileInfo os.FileInfo, err error) error {
...do something with service...
return nil
}
func main() {
service, err := storage.New(client)
...
filepath.Walk(*dirName, loopThroughDirs)
}
を私が解決したい問題は、私はloopThroughDirs()
内service
を使用したい、これです。これはどうすればいいですか?
PS: loopThroughDirs
の機能はfilepath.Walk()
のコールバックと呼ばれますか?
ありがとう、非常に便利です。これはGoでどのように呼び出されますか?私は 'コールバック'が間違っていると仮定します: - P –
'getWalkFunc'は基本的にクロージャを返します。ここでそれらの詳細を読むことができます:http://stackoverflow.com/documentation/go/2741/closures/9226/closure-basics – abhink