回答編集履歴

1

補足

2020/12/09 14:23

投稿

otn
otn

スコア85893

test CHANGED
@@ -9,6 +9,26 @@
9
9
  `def enjoy`の中で定義しているつもりかも知れませんが、それはメソッドのローカル変数です。
10
10
 
11
11
  メソッドの外とは関係ないです。
12
+
13
+
14
+
15
+
16
+
17
+ > 手続きオブジェクトとは
18
+
19
+ 外側のローカル変数を参照できます。
20
+
21
+
22
+
23
+ なので、
24
+
25
+ > Proc.new { output << "Programming!"}.call
26
+
27
+
28
+
29
+ のブロック内の`output`はその外側(`def enjoy`の内側)の`output`と同じです。
30
+
31
+
12
32
 
13
33
 
14
34