- 458 名前:デフォルトの名無しさん [2016/12/10(土) 03:10:58.12 ID:jJfPnpDE.net]
- static IDisposable SubscribeTracer<T>(this IObservable<T> source, string name) {
var disposer = source.Subscribe(value => Console.WriteLine("{0} : OnNext({1})", name, value)); return disposer; } このプログラムは一体なんなのだ。全然わからない。そこで理解しようと思ってラムダ部分を 関数に置き換えてみると void ramda(string value ){ Console.WriteLine("{0} : OnNext({1})", name, value); }; だあーー、nameを持ってこれない。持ってくるとすればグローバルにするしかない。 ラムダ関数は単なる匿名関数というだけでなくて、こういう便利な機能があるんだと初めて 分かった。つまり普通の関数にするとスコープを閉じるがラムダにするとスコープが開く。 オープンスコープ機能だ。ダダだい発見だ。と思ってほかにも気が付いた奴がいないかと 「ラムダ関数はスコープを開く」でググってみると、無い。俺の発見だ。w
|

|