From: matz@... (Yukihiro Matsumoto) Date: 1999-02-15T17:35:33+09:00 Subject: [ruby-list:12084] Re: module in module まつもと ゆきひろです In message "[ruby-list:12082] Re: module in module" on 99/02/15, TAKAHASHI Hitoshi writes: | 高橋です。お答え頂きありがとうございます。 |なるほど。しかしそうするといっそう、 |>> | そもそも、module 内で module を定義するメリットって何でしょう? |この疑問の答えが分からなくなります。つまり、 | |module MainModule | .... | module SubModule | .... | end |end | |というのと | |module MainModule | .... |end |module SubModule | .... |end | |と書いた場合との違いが分かりません。 違いは以下の通りです. * 内側のモジュールは外側のモジュールを経由してしかアクセス できない.つまりMainModule::SubModuleという形式か,また は include MainModule; Submodule という形式でしか参照で きない. * 内側のモジュールからは外側のモジュールで陽に(includeとか ではなく)定義されている定数が参照できる. この違いが望ましいと思えば,ネストしたモジュールを使うわけで すね. |>> Tk::WmはTkCommを既にincludeしているクラスにincludeして使うこ |>> とを想定していました.TkBalloonクラスでのWmの使い方によりま |>> すが,明示的に include TkComm しておいた方が良い場合がありま |>> したでしょうか? | |例えば、Window Manager の飾りとかのない hello world スクリプトとして、 すいません.私がうっかりしてました.include TkCommは必要です ね.バグです.いかんなあ,えらそうに発言しておいて. まつもと ゆきひろ /:|)