轉載自:www.66rpg.com
原作者:Dubealex
Near Fantastica(特別講)
主講人(翻譯):frantice
電子書製作:小湖
第五講: 變量和常量(下)
學習完變量了,現在來學習常量.
常量像一個容器,裝載著某個值.它本來不能被改變,但是在Ruby中可以.. 但是只能在這個類中你可以改變它,它的值總是和你給它定義的時候保持一致.下面的例子中,我們可以看到三個類中常量的如何使用.
A_CONSTANT=100
class Constant_Test_1
ANOTHER_CONSTANT=50
def initialize
print ANOTHER_CONSTANT
print A_CONSTANT
end
end
class Constant_Test_2
def initialize
print Constant_Test_1::ANOTHER_CONSTANT
print A_CONSTANT
end
end
class Constant_Test_3
A_CONSTANT+=1
def initialize
print A_CONSTANT
end
end
首先,我們創建了一個全局變量A_CONSTANT,值為 100. 我們看到這個全局變量是在類之外創建的,它在遊戲的每個類中都通用.第一個class類中,我們創建了常量,它是在類中使用的,但是在另一個類中使用正確的語法也能調用它第二個類中我們事實上獲得了第一個類中定義的變量.它的句法是這樣:
Class_Name::CONSTANT_NAME
使用這樣的句法,我們就能在一個類中定義一個常量.也能讓其他的類中能使用它.在第三個例子中,我們給全局變量"A_CONSTANT"增加了1, 顯示出來就是101.
好了,讓我們來測試幾遍! 加入腳本後在事件頁里寫上:
Constant_Test_1.new
Constant_Test_2.new
Constant_Test_3.new
Constant_Test_1.new
這樣的格式應該不陌生了吧^0^
我們會發現常量"A_CONSTANT" 在執行Constant_Test_3.new的時候會保持在101這.是因為它一直使用靜止不變的"A_CONSTANT"的值也就是 100. 簡單地說,常量就是常量,不會改變的量.一定要記住常量不能在方法中被創建或者修改哦~~~