[#43970] 次の1.8.6 — Urabe Shyouhei <shyouhei@...>
卜部です。
8 messages
2007/09/01
[#43980] MacOS X で irb が走らない — "Hideo Konami" <konami@...>
小波です。
9 messages
2007/09/02
[#43987] オンラインマニュアル→[最近の更新] →「Sort alphabetically] — take_tk <ggb03124@...>
たけ(tk)です
6 messages
2007/09/03
[#43988] Re: オンラインマニュアル→[最近の更新] →「Sort alphabetically]
— SATOH Fumiyasu <fumiyas@...>
2007/09/03
At Mon, 3 Sep 2007 15:37:29 +0900,
[#43996] ある日付の最終時刻の求め方 (秒単位) — SATOH Fumiyasu <fumiyas@...>
さとうふみやす @ OSS テクノロジです。
14 messages
2007/09/05
[#43998] Re: ある日付の最終時刻の求め方 (秒単位)
— "GOTO Kentaro" <gotoken@...>
2007/09/05
07/09/05 に SATOH Fumiyasu<fumiyas@osstech.jp> さんは書きました:
[#44000] Re: ある日付の最終時刻の求め方 (秒単位)
— Urabe Shyouhei <shyouhei@...>
2007/09/05
GOTO Kentaro wrote:
[#44025] iconvの多言語対応状況に関する質問 — "S_Konno(今野 滋)" <sk@...>
今野です。お世話になっております。
5 messages
2007/09/13
[#44032] rubyインストールガイドMacOSX更新しました⇒MacPortsでのrubyインストール:Tkを有効に — "S_Konno(今野 滋)" <sk@...>
今野です。お世話になっております。
4 messages
2007/09/15
[#44037] スコープについての質問 — "142QN4969@..." <ohrsts@...>
小原です。御世話になっています。
6 messages
2007/09/16
[#44044] ApacheでVirtual hostを使わない設定でRailsを動かしたい — "paptimusx scirocco" <paptimusx@...>
ApacheでVirtual hostを使わない設定でRailsを動かしたいのですが、
4 messages
2007/09/20
[ruby-list:44038] Re: スコープについての質問
From:
cuzic <cuzic@...>
Date:
2007-09-16 23:25:38 UTC
List:
ruby-list #44038
cuzic です。 スコープというより、破壊的メソッドか非破壊的メソッドを使うかの問題です。 def hiduke(today) print " 日付を西暦6桁で入力して下さい : " today=gets.chomp end ではなく def hiduke2(today) print " 日付を西暦6桁で入力して下さい : " today.replace gets.chomp end と実行すれば、hiduke2 メソッドの中で today オブジェクトの内容が破壊的に変更されます。 それは、String#replace が破壊的メソッドだからです。 この内容は、「たのしい Ruby 」という本の中でオブジェクトがメモリ上のどこを指し示していて 破壊的メソッドではどうなり、非破壊的メソッドではどうなるかということを 分かりやすい絵 で解説していたような覚えがあります。(あやふや) ではでは。 07/09/17 に 142QN4969@plala.or.jp <ohrsts@lapis.plala.or.jp> さんは書きました: > > 小原です。御世話になっています。 > > わたしの環境は OS=vine linux 3.0 > ruby 1.8.2 (2004-11-03) [i386-linux] です。 > > 次のスクリプトと、その実行結果がなぜそうなるのか、 > 理解できません。 > > ----------------script---------------------- > #!/usr/bin/ruby > def hiduke(today) > print " 日付を西暦6桁で入力して下さい : " > today=gets.chomp > end > > def set(a) > print " 日付を西暦6桁で入力して下さい : " > a[0]=gets.chomp > end > > #### main #### > today="0";hiduke(today) > puts today > > ary=[];set(ary) > p ary > ----------------script end------------------- > > -----------------実行結果--------------------- > [ohr@localhost ruby]$ ./x.rb > 日付を西暦6桁で 入力して下さい : 070901 > "0" > 日付を西暦6桁で 入力して下さい : 070901 > ["070901"] > ----------------実行結果 end------------------ > > puts today で > "070901" と表示されるのを期待したのですが、、、。 > > today="0";hiduke(today) → today=hiduke(today) > とすると "070901" 表示されますが、 > 戻り値を使わない方法は、ないのでしょうか? > > [ruby-list:10976] スコープの範囲 > 以下のスレッドを通読したのですが、綾分かりしません。 > > どなたか、教えていただけないでしょうか。 > あるいは、この点を解説した site でもいいのですが。 > > 以上よろしくお願いします。 > > > > > > > > > > > > >