[#44431] コンストラクタの引数について&インスタンス変数の持ち方について — Akira Hayakawa <ruby@...>

度々オブジェクト指向についての質問ですいません。

17 messages 2008/01/04
[#44433] Re: コンストラクタの引数について&インスタンス変数の持ち方について — Yukihiro Matsumoto <matz@...> 2008/01/04

まつもと ゆきひろです

[#44469] pdf 作成 ライブラリ — "Luiz Aoki" <luizruby@...>

はじめまして、青木ルイスと申します、

14 messages 2008/01/12
[#44479] ファイル出力時のprintについて — m-hatake@... 2008/01/16

畠山と申します。

[#44483] format %g の丸めについて — 山崎雄介 <y-yamasaki@...>

山崎(ゆ)です。

14 messages 2008/01/16

[ruby-list:44493] モジュールのメソッドを呼び出し時の引数について

From: m-hatake@...
Date: 2008-01-16 15:31:42 UTC
List: ruby-list #44493
畠山です。

問題点がちょっと違ってたので、タイトルを

 [ruby-list:44485] Re: ファイル出力時のprintについて

から変更しました。

> > 普通のprint
> > (この通常の組み込み関数としてのprintが何のメソッドになっているかは
> > 実は良く知らないのですが)
> Kernel モジュールですね。
> puts Kernel.methods.sort 
> とかで確認してみてください。

ちょっと確認してみました。

print (100), "\n"

これだとOKですが、

Kernel.print (100), "\n"

だとやっぱり、エラーになります。

これはもしやと思い、
具体的にモジュールを定義して呼び出してみました。

module MMM
	def test(*a)
		print a
	end
end

include MMM

test 100, "\n"		# => OK
test (100), "\n"	# => OK
MMM.test 100, "\n"	# => OK
MMM.test (100), "\n"	# => NG

こういうものなのでしょうか?
やっぱり4番目のやつもエラーにならずに実行されると
普通期待してしまうと思うのですが、どうでしょう。
これをエラーにする理由はどこかにあるのでしょうか?

畠山










In This Thread