ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

Ruby1.9、Windowsで-その2 リテラル、定数、変数

2008-04-03 18:46:44 | Ruby

 シリーズ「Ruby1.9、Windowsで」です。

 前回、流れを書いて、コメントの書き方までやったので、今日は、
   2-1.定数
 と
   2-2-1.1変数のあらわし方
 のあたりをいきます。

 今回も、irb(インタープリタで、すぐ確認できるやつ)を使い

 お勉強資料に、
オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル 
http://www.ruby-lang.org/ja/man/html/index.html

を使います。




■リテラル

 数字は、
   12345
 とか、
   -678.9
 のように、ふつうにかける。
 あと、1.2e-3のように、eを使った表現方法もできる。

 16進の場合は 0x33 のように、0xをつけ、
  2進の場合は 0b11 のように、0bをつけ、
  8進の場合は 0o67 のように、0oをつける。
8進は、067のように、0を頭に付けるのでもOK

 文字列は、'(シングルクオート)で囲んでも
      "(ダブルクウォート)でかこんでも
 文字列となるが、ちょっと意味が違い、""で囲むと、
#{ }の中カッコで囲まれた中を展開する。
 なので、

puts '1+1=#{1+1}'

は、

1+1=#{1+1}

と表示されますが、

puts "1+1=#{1+1}"

は、

1+1=2

と表示されます。

 くわしくは、ここ参照。





■定数

 ここでいう定数とは、リテラルのことではなく、
 Javaなんかだと、
   public static final int err_nofile = -1;
 とか宣言するような定数のことみたい。

 で、定数は、最初の1文字目が大文字だそうです。型とか宣言しないで、すぐに使えるみたい。

 Test=5
puts Test

とやると、5と表示されます。

 で、定数なので、ここのあと、
 Test=6
 とやると、当然ワーニングがでるんだけど、
 そのあと、

puts Test

とやると、6と表示される。
つまり、値をセットすると、ワーニングがでるものの、入ってしまうわけで、
それっていいんかい(^^;)と思うけど・・ま、気にしないと(^^;)




■変数

 まず、ローカル変数というのは、1文字目アルファベット小文字です。
test=5
puts test

とやると、5と表示され、変数ですので、

test=6
puts test

とやると、なにも問題なく、6と表示されます。

 ちなみに、1文字目が$はグローバル変数です

$test=5
puts $test

とやると、5と表示され、変数ですので、

$test=6
puts $test

とやると、なにも問題なく、6と表示されます。

うん?ローカルとグローバルでどこが違うの・・・
といわれると、「見える範囲が違う」と答えなければいけないのですが、
そう答えてしまうと、その範囲を説明するのに、

3-1-6.クラス、構造体、メモリなどの処理

を説明しないといけないので、その「クラス」を説明した後に、この変数のところは説明します。


 で、それを説明すると、のこりの、インスタンス変数、クラス変数も説明できますので、そのときにあわせて説明します。

 くわしくは、ここ参照。

なお、今回の例は数字でしたが、もちろん、

test='Hello World'
puts test

のように、文字列でもOKです。ちなみに上記は、

Hello World

と出力されます。




こんかいはここまで。


この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 正規表現でのチェック方法を... | トップ | オブジェクト指向で、修正に... »
最新の画像もっと見る

Ruby」カテゴリの最新記事