Bug #32

Hash.new の説明が難しい

Added by date (Ken DATE) almost 4 years ago. Updated about 1 year ago.

[ruby-reference-manual:806]
Status:Closed Start date:02/13/2008
Priority:Normal Due date:
Assignee:okkez (okkez _) % Done:

100%

Category:doc
Target version:-
reporter:rock ruby_version:1.8

Description

Hash.new でブロックを与えるときの説明が初心者にはちょっと難しいです。

実行例の中の「ブロックはその都度実際に値がセットされるので、その心配はない。」を
「ブロックでその都度値をセットさせれば,その心配はない。」に変えると
だいぶ分かりやすくなると思いますが,如何でしょうか。

というのは,イディオムとも言える Hash.new{|h, k| h[k]=なにか } のブロックは,

   1. 呼び出されたときにハッシュに値をセットすることと
   2. その値を Hash#[] の値として返すこと

の二つの働きを担っていますが,初心者はそのことに気づきにくいからです。

Associated revisions

Revision 2906
Added by okkez almost 4 years ago

fixed #32

History

Updated by okkez (okkez _) almost 4 years ago

  • Assignee set to okkez (okkez _)

Updated by okkez (okkez _) almost 4 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100
Applied in changeset r2906.

Also available in: Atom PDF