2010-02-16 83 views

回答

3

它訪問給定類或模塊中的常量。例如。 ActiveRecord::Base是在模塊ActiveRecord中定義的常量Base

9

它被稱爲範圍解析運算符。基本上是在命名空間內引用類的一種奇特方式。 ActiveRecord是命名空間,Base是類。

+0

什麼是幻想呢?這是做這件事的正常方法。 – Chuck

+0

@這是真的。我正在從我的VB/C#預期發言。 – Achilles

21

From the Pickaxe

當在方法調用顯式指定一個接收器,它可從使用一個時間段(.)或兩個冒號(::)的方法名稱分離。如果方法名以大寫字母開頭,則會出現這兩種形式之間的唯一區別。在這種情況下,Ruby將假設receiver::Thing方法調用實際上是嘗試訪問接收器中的一個稱爲Thing的常量,除非方法調用在括號之間具有參數列表。

+1

一無所獲........................................... – Liker777

相關問題