3

このフォルダー構造がある場合:

rexml
rexml/document

次の構文は、その下のすべてを含む再帰参照ではありませんか?

require 'rexml'

または、 の内容にもアクセスしたい場合は、次のように記述する必要があります'document'か?:

require 'rexml/document'

私が混乱している理由は、作成者が両方の require ステートメントを次々に書いているコードを見ているからです。

require 'rexml'
require 'rexml/document'

これが本当に必要かどうかはわかりませんでした。

4

2 に答える 2

11

Ruby の標準requireは Ruby ファイルのみをロードし、フォルダなどはロードしません。「'rexml' が必要」と言うとき、実際には「$: 内のパスの 1 つで 'rexml.rb' を探してロードする」と言っているのです。したがって、「require 'rexml/document'」は、$: のいずれかのパスにあるフォルダー「rexml」でファイル「document.rb」を探します。

于 2009-06-05T22:15:25.033 に答える