全角文字と定数

 2010-06-08
よく勘違いされている方を見かけるこの2つ。
何を隠そう私も最初勘違いしてました。
だって普通プログラミング言語ってそういうもんだろ?

放っておくと大変なことになりますよ。

1.全角文字
Ruby では、全角文字を使用した記述をサポートされています。
def メッセージ(引数)
  p 引数
end
変数 = 3
メッセージ(変数)  # => 3
全角文字は推奨されませんが使えないわけではありません。

初心者が間違える空白入力も SyntaxError ではなく
NameError が出るのはそのためです。


2.定数
定数、その名の通り定められた数です。
しかし、Rubyでは再代入が可能です。
CONST = 123
CONST = "変えちゃった><"
CONST.sub!(/.+/, "わ!")
p CONST   # => "わ!"
破壊的メソッドを使用しても例外などは発生しません。
定数だからって安心はできませんよ。

freeze メソッドを使えば破壊的メソッドの魔の手からは逃れられますが、
再代入の際は音沙汰なしです。
べつに再代入はいいのですけどね。

ちなみに、再代入すると警告が出ますが、ツクールでは確認できません。
コメント




 

 ※ コメント内にURLを含めるには、バッククォート(`)をURLの直前に付け加えてください。


管理人のみ閲覧許可 [?]

トラックバック
トラックバックURL:
http://cacaosoft.blog42.fc2.com/tb.php/406-63e98e83
≪ トップページへこのページの先頭へ  ≫
カレンダー
01 << 2017/02 >> 03
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 - - - -

カテゴリー
最近の記事
02/14 お返事
01/21 お返事
01/12 更新情報
11/28 お返事
08/08 お返事

最近のコメント
01/21 お返事
11/30 z座標
11/20 z座標
08/03 お返事
02/24 お返事

タグクラウド

リンク