Ruby/Değişkenler ve Sabitler
Rubydeki bir değişken isminin başlangıcındaki karakterlerle ayırt edilebilir. Değişkenin isim uzunluğu konusunda bir sınırlama yoktur. (yığın boyutunu saymazsak).
Yerel Değişkenler
[değiştir]Örnek:
falanfilan
İsmi küçük harf (a-z) ya da altçizgi (_) ile başlayan bir değişken, bir yerel değişken ya da metor duasıdır (method invocation).
Bir yerel değişken sadece yüklendiği bloktan erişilebilir. Örneğin:
i0 = 1
loop {
i1 = 2
print defined?(i0), "\n" # doğru; çünkü "i0" bu loğu kapsayan yüksek blokta başlatılmıştır
print defined?(i1), "\n" # doğru; çünkü "i1" bu blokta başlatılmıştır
break
}
print defined?(i0), "\n" # doğru; çünkü "i0" bu blokta başlatılmıştır
print defined?(i1), "\n" # yanlış; "i1" döngüde başlatılmıştır
Örnek Değişkenleri
[değiştir]Örnek:
@filan
A variable whose name begins with '@' is an instance variable of self. An instance variable belongs to the object itself. Uninitialized instance variables have a value of nil.
Literally it's equivalent to the following.
self.foobar
Sınıf Değişkenleri
[değiştir]Örnek:
@@falan
Küresel Değişkenler
[değiştir]Örnek:
$falanca
İsmi '$' ile başlayan her değişkenin küresel kapsamı vardır; yani değişken, program çalıştırılırken her yerden erişilebilir.
Sabitler
[değiştir]Kullanım:
FALAN
İsmi büyük harfle (A-Z) başlayan tanımlar sabitlerdir. Bir sabit başladıktan sonra tekrar değer atanabilir, fakat öyle yapmak hata üretecektir. Her sınıf bir sabittir.
Bir sabite yeniden değer atamayı denemek ya da başlatılmamış bir sabite ulaşmayı denemek NameError (İsimHatası) istisnasını yükseltir.
Sahte Değişkenler
[değiştir]self
- Güncel yöntemin bileşenin yürütür.
nil
- The sole-instance of the
NilClass
class. Hiçbirşey ifade etmez.
true
- The sole-instance of the
TrueClass
class. Doğruyu ifade eder.
false
- The sole-instance of the
FalseClass
class. Yanlışı ifade eder.
Sahte değişkenin değeri değiştirilemez. Substitution to a pseudo variable causes an exception to be raised.