(make-thread :name common-lisp :part 5) at TECH
[2ch|▼Menu]
403:デフォルトの名無しさん
08/08/24 19:03:42
>>398 クロージャ理解の壁だね。やりたい事はわかるが、おしい。もう一歩。
ここで変数のスコープとかの理解が加われば先に勧めるよ。
クロージャは変数をキャプチャするが、それは「クロージャが作成された」環境の変数なんだ。
cplus が作成されたときに参照している count はグローバル環境の count で、let で作った束縛じゃない。
したがって、後から関数の外側で let で束縛を作っても意図した動作にはならない。

この場合は count がスペシャル変数としてグローバル環境に定義されていた場合はまた話が違うんだけどね…。


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4164日前に更新/237 KB
担当:undef