欢迎光临
我们一直在努力

深入探讨Ruby全局域变量

对于一个程序员来说,越简便、越灵活的语言,越是他们需要的。Ruby语言就是这样一种。我们在这里为大家介绍的Ruby全局域变量是整个应用中都可以访问的,而且是同一个变量的引用。是全局作用域的。#t#

Ruby全局域变量之$/

输入记录分隔符。默认值为”\n”。

  1. irb(main):076:0> $/ #初始的输入分割符   
  2. => “\n”   
  3. irb(main):077:0> gets   
  4. => “\n”   
  5. irb(main):078:0> “test” 
    #输入回车之后,默认插入”\n”,输入结束   
  6. => “test”   
  7. irb(main):079:0> $/=”@” 
    #修改输入符为”@”   
  8. => “@”   
  9. irb(main):080:0> gets 
    #输入回车之后没有结束读取进程,
    直到输入”@”之后结束   
  10. test   
  11. @   
  12. => “test\n@” 

Ruby全局域变量之$\

输出记录分隔符。print会在最后输出该字符串。
默认值为nil,此时不会输出任何字符。


 
  1. irb(main):082:0> print "abc"   
  2. abc=> nil   
  3. irb(main):083:0> $\="@"   
  4. => "@"   
  5. irb(main):084:0> print "abc"   
  6. abc@=> nil 

Ruby全局域变量之$,

默认的切分字符。若Array#join中省略了参数时或在print的各个参数间将会输出它。
默认值为 nil ,等同于空字符串。 


 
  1. irb(main):087:0> ["a","b","c"].join   
  2. => "abc"   
  3. irb(main):088:0> $,="," 
    #修改切分字符为","   
  4. => ","   
  5. irb(main):089:0> ["a","b","c"]
    .join #输出结果改变   
  6. => "a,b,c"   
  7. irb(main):090:0> 

Ruby全局域变量之$;

当String#split中省略参数时的切分字符。默认值为nil,此时将进行特殊的分割。


 
  1. irb(main):090:0> $;   
  2. => nil   
  3. irb(main):091:0> "abc".split 
    #默认的切分字符情况下,把整个字符当成一个元素   
  4. => ["abc"]   
  5. irb(main):092:0> $;="b"   
  6. => "b"   
  7. irb(main):093:0> "abc".split 
    #以"b"为切分字符情况下,把整个字符当成两个元素   
  8. => ["a", "c"] 

Ruby全局域变量之$*

传递给Ruby脚本的参数.内部常数ARGV的别名

Ruby全局域变量之$$

当前运行中的Ruby进程的pid。 


 
  1. irb(main):094:0> $$   
  2. => 5167 

Ruby全局域变量之$:

$LOAD_PATH
包含一个数组,其内容是load或require加载文件时用的搜索目录列表. 


 
  1. irb(main):095:0> $:   
  2. => ["/usr/local/lib/site_ruby/1.8", 
    "/usr/local/lib/site_ruby/1.8/i486-linux",
     "/usr/local/lib/site_ruby/1.8/i386-linux",
     "/usr/local/lib/site_ruby", "/usr/lib/ruby
    /vendor_ruby/1.8", "/usr/lib/ruby/vendor_
    ruby/1.8/i486-linux", "/usr/lib/ruby/vendor_
    ruby", "/usr/lib/ruby/1.8", "/usr/lib/ruby/
    1.8/i486-linux", "/usr/lib/ruby/1.8/i386-
    linux", "."]   

 

赞(0) 打赏
未经允许不得转载:九八云安全 » 深入探讨Ruby全局域变量

评论 抢沙发