[#46301] 自前コンパイルしたruby1.9の$LOAD_PATHに"."が入っていない — KURODA Hiraku <hiraku@...>

こんにちは、黒田ひらくと言います。

12 messages 2009/08/20

[#46321] ファイル名について — "前川 映一" <eiichi_maekawa@...>

17 messages 2009/08/21
[#46322] Re: ファイル名について — "NARUSE, Yui" <naruse@...> 2009/08/21

成瀬です。

[#46324] Re: [ruby-list:46322 , 46323 ] Re: ファイル名について — "前川 映一" <eiichi_maekawa@...> 2009/08/21

[ruby-list:46319] Re: [ruby-list:46315 ] [ruby-list:46314 ] Re: rubyのクラス内のメソッドの使用について

From: "前川 映一" <eiichi_maekawa@...>
Date: 2009-08-20 22:47:28 UTC
List: ruby-list #46319
るびきちさん、中田さん
ありがとうございました。

> どれもクラスメソッドなので Test1 を指定する必要はありません。

> さらにRubyはメソッドの最後に評価した値が自動的に返り値になるので、
> 最後のreturnは省いておきました。

> class Test1

> def self.test_text( abc )
> puts abc
> abc
> end

> def self.test_abc( cde )
> puts cde
> cde
> end

> def self.test_add( dddd )
> a = test_text("abcd")
> b = test_abc("efgh")
> c = dddd
> e = a + b + c
> end
よくわかりました。スッキリしました。
−−−−−−−−−−−−−−−−−−−−−−−−−
> なかだです。

> At Thu, 20 Aug 2009 15:27:19 +0900,
> 前川 映一 wrote in [ruby-list:46302]:
> > 上記サンプルコードで、Test1クラスにある
> > test_add は、クラス内のtest_text と、
> > test_abc を使用していますが、
> > クラス内のメソッドを使用する場合でも、
> > クラス名 Test1.test_add と記述するのでしょうか?

> いずれもTest1の特異メソッドですから、Test1しか扱わないのであれば
> test_add内ではTest1.をつける必要はありません。違いが出るのは、
> Test1を継承したクラスに対してtest_addを呼ぶ場合です。Test1.とレ
> シーバが明示されていれば、selfがなんであろうとTest1.test_textな
> どが呼ばれます。指定していなければ、Test1から継承したにせよサブ
> クラスでオーバーライドしたにせよ、selfの持つtest_textが呼ばれま
> す。意味が変わりますので目的に応じて使い分けてください。

なかださん ありがとうございました。


In This Thread

Prev Next