1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【初心者必読】Ruby の誤解あるあるAdvent Calendar 2020

Day 16

Ruby のローカル変数名は小文字で始めなければならない,はウソ

Last updated at Posted at 2020-12-15

Ruby の初心者向け記事によく

変数名は小文字で始めなければならない

ということが書かれています。
ここでいう「変数名」は「ローカル変数の名前」のことでしょうね。変数にはグローバル変数やインスタンス変数もあるので,ローカル変数なら「ローカル変数」と書いたほうがいいと思います。

それはさておき,「小文字で始めなければならない」は誤りです。
まず,アンダースコア(_)で始めることが可能です。
それから,やろうと思えば非 ASCII 文字を使うことも可能です。

年齢 = 108
나이 = 108
aĝo = 108
වයස = 108

この四つの行はすべてローカル変数への代入です。
全角スペースなんかも使えます。まあやめといたほうがいいでしょうけど。

ただし,非 ASCII 文字であっても,大文字で始まっていたら定数です。

# ギリシャ文字の例
ηλικία = 108
Ηλικία = 108

# 全角英字の例
Age = 108

p defined?(ηλικία) #=> "local-variable"
p defined?(Ηλικία) # => "constant"
p defined?(Age) # => "constant"
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?