Ruby#等效C#'使用'语句

Jas*_*orn 5 c# ruby syntax namespaces module

我在过去的几个月里一直在使用Ruby,但是我还没想到的一件事是Ruby相当于C#(和其他语言)的using说法.

我一直在使用该require语句声明我对Gems的依赖,但是我变得懒惰,并且宁愿不用我们的模块(名称空间)名称完全限定我经常使用的类名.

当然这是可能的,对吧?我一定不能使用正确的术语,因为谷歌没有给我任何有用的东西.

Dig*_*oss 6

>> Math::PI
=> 3.14159265358979
>> PI
NameError: uninitialized constant PI
    from (irb):3
>> include Math
=> Object
>> PI
=> 3.14159265358979
Run Code Online (Sandbox Code Playgroud)

OTOH,如果问题只是别名类名,请考虑,因为他们说" 类是一个对象,而Object是一个类 ".

所以:

>> require 'csv'
>> r = CSV::Reader
>> r.parse 'what,ever' do |e| p e end
["what", "ever"]
Run Code Online (Sandbox Code Playgroud)

是的,在Ruby中,类名只是对类的对象的任何其他引用Class.