实例讲解Ruby中的局部变量

来源:爱站网时间:2018-01-31编辑:网友分享
这篇文章实例讲解Ruby中的局部变量,是Ruby学习当中的基础知识,一起跟随小编过来看看吧。

 局部变量由小写字母或下划线(_)开头.局部变量不像全局和实变量一样在初始化前含nil值.

ruby.html" target="_blank">ruby> $foo
   nil
ruby> @foo
   nil
ruby> foo
ERR: (eval):1: undefined local variable or method `foo' for main(Object)  


对局部变量的第一次赋值做的很像一次声明.如果你指向一个未初始化的局部变量,Ruby解释器会认为那是一个方法的名字;正如上面所见错误

信息的.

一般的,局部变量的范围会是



proc{...} 

loop{...} 

def...end 

class...end 

module...end 

整个程序(除非符合上面某个条件)



下面的例子,define?是一个检查标识符是否已定义的操作符.如果已定义它将返回标识符的描述,否则返回nil.正如你所见的,bar的范围是

loop的局部变量;当loop退出时,bar无定义.

ruby> foo = 44; print foo, "\n"; defined? foo
44
   "local-variable"
ruby> loop{bar=45; print bar, "\n"; break}; defined? bar
45
   nil  


一个范围内的过程对象共享这个范围内的局部变量.这里,局部变量 bar 由 main 和过程对象 p1, p2共享:

ruby> bar=0
   0
ruby> p1 = proc{|n| bar=n}
   #
   
   
 
   
 
   
 
     


         





  
         
         
            
         
     
   
    
     
 
   
 
   
 
     


      

  

    
    
    
    
 
   
 
   
 
      

0x40172654>0x40172668>0x4017280c>0x40172820>0x40170fac>0x40170fc0>0x8dce8>0x8deb0>

上一篇:Ruby重载

下一篇:初步掌握Ruby类常量

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载