ruby中的整数变量声明

时间:2014-02-21 06:53:27

标签: ruby-on-rails ruby

我是Ruby新手,我试图在ruby中声明一个可以存储int类型值的简单变量。

我尝试过以下代码

var=5
puts var

@var=5
puts @var

两个程序的输出都是5,任何人都可以解释这两种代码的区别。

4 个答案:

答案 0 :(得分:5)

您正在谈论ruby语言中的变量类型。

var = 5 is local variable

@var  = 5 is instance variable 

本地变量和实例变量之间的主要区别在于局部变量仅在控制器中可用,其中实例变量在相应的视图中也可用。控制器和视图不共享局部变量。

有关详细信息,请查看以下链接:

Ruby Programming/Syntax/Variables and Constants

Variables in Ruby

答案 1 :(得分:1)

var是局部变量,@ var是实例变量

本地变量和实例变量之间的主要区别如下

  1. 局部变量具有其范围限制,即另一种方法不可用,而另一种方法可用于另一种方法
  2. 本地和实例变量也可在视图中使用
  3. 实例变量对于每个对象是分开的

答案 2 :(得分:0)

@var是一个实例变量,通常在类中使用。

答案 3 :(得分:0)

var = 5是局部变量,只能从其块中访问。

@var = 5是实例变量,实例变量属于对象本身。