SORU
9 HAZİRAN 2010, ÇARŞAMBA


Ruby'in çift iki nokta üstüste (::)?

Bu çift kolon hakkında :: nedir? E. g. Foo::Bar.

definition buldum:

:: sağlayan tekli bir operatördür: herhangi bir sınıf veya modülü dışarıdan sabitler, örnek yöntemleri ve sınıf yöntemleri bir sınıf veya modülü, erişilmesi içinde tanımlanmış.

ama bu sadece daha fazla doğuruyor. İyi ise sadece kullanabilirsiniz kapsamı (özel) korumalı :: her şeyi ifşa etmek nedir?

CEVAP
9 HAZİRAN 2010, ÇARŞAMBA


:: temelde ad çözümlemesi bir operatör. Sen modüller veya sınıfların sınıf düzeyi öğeleri öğeleri erişim sağlar. Örneğin, bu ayar vardı ki:

module SomeModule
    module InnerModule
        class MyClass
            CONSTANT = 4
        end
    end
end

SomeModule::InnerModule::MyClass::CONSTANT modülü dışarıdan CONSTANT giriş yapabilirsin.

Farklı bir sözdizimi (nokta .) ile bu erişim beri örnek yöntemleri bir sınıf üzerinde tanımlı etkilemiyor.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • arnejann

    arnejann

    3 Kasım 2007
  • CareyHolzman

    CareyHolzman

    24 Ocak 2008
  • Chilla Frilla™

    Chilla Frill

    7 Aralık 2006