うらおブログ(移転しました)スマートフォン用の表示で見るやねうらおブログ(移転しました)この広告は、90日以上更新していないブログに表示しています。closureである」という結論に落ち着いている。Fortran(すまん。不勉強なのでFortran77時代しか知らない。)のように関数の呼び出しのときのパラメータが参照で渡されたところで、必要なら関数本体の先頭でローカル変数にコピーしてそちらを使えばいい話だし、同様に、delegateがこのような実装になっていようが、必要なら匿名delegateの直前で別の変数にコピーして、その変数をdelegateのなかで参照すれば良い。この意味において、closure的に使うことが出来ると言える。このような実装になっていることによって、delegate内で同一の値型変数のインスタンスを参照するようなことが可能になる。具体的なメリットはそういうことだろう。C#では値型変数を直接heapに確保できない。int();などとやったところで、それはstack上に確保される。boxingでは、boxingされたものをunboxingすることは出来ても直接その値を書き換えることが出来ない。ようなclassを用意して、こいつを使って共有するしかない。3;などと書かなくてはいけなくなる。これは非常に冗長である。typeがあるから嫌らしいのである。私は、値型をheap上に確保する構文があれば良いと思う。i;のように宣言すればheap上に確保されるだとか。いう機構があれば、delegateは現状のC#のような仕様になっていなくても済む。いう構文がない限りは、delegateは、現状のC#のような仕様であるほうが好ましいと思う。誰もが一度は「アレ?」と思うだろうけれども。電子書籍になるに至るまでの話ブログちょっとだけ移転のお知らせ時代はまだゲームセンターあらしに追いつかないのかやねうら王、電王戦バージョン提出しました将棋の神様のレーティングはいくつなのか?月別アーカイブはてなブログをはじめよう!yaneuraoさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。