【发布时间】:2011-01-17 15:03:43
【问题描述】:
:: 在 Ruby 中是什么意思?例如。 Foo::Bar.
【问题讨论】:
:: 在 Ruby 中是什么意思?例如。 Foo::Bar.
【问题讨论】:
当在方法调用中明确指定接收者时,可以使用句点 (
.) 或两个冒号 (::) 将其与方法名称分开。如果方法名称以大写字母开头,则这两种形式之间的唯一区别是。在这种情况下,Ruby 将假定receiver::Thing方法调用实际上是在尝试访问接收者中名为Thing的常量,除非该方法调用在括号之间有一个参数列表。
【讨论】:
它被称为范围解析运算符。基本上是一种在命名空间中引用类的奇特方式。 ActiveRecord 是命名空间,Base 是类。
【讨论】:
它访问给定类或模块中的常量。例如。 ActiveRecord::Base 是模块ActiveRecord 中定义的常量Base。
【讨论】: