我是Ruby新手,我试图在ruby中声明一个可以存储int
类型值的简单变量。
我尝试过以下代码
var=5
puts var
和
@var=5
puts @var
两个程序的输出都是5
,任何人都可以解释这两种代码的区别。
答案 0 :(得分:5)
您正在谈论ruby语言中的变量类型。
var = 5 is local variable
和
@var = 5 is instance variable
本地变量和实例变量之间的主要区别在于局部变量仅在控制器中可用,其中实例变量在相应的视图中也可用。控制器和视图不共享局部变量。
有关详细信息,请查看以下链接:
答案 1 :(得分:1)
var是局部变量,@ var是实例变量
本地变量和实例变量之间的主要区别如下
答案 2 :(得分:0)
@var是一个实例变量,通常在类中使用。
答案 3 :(得分:0)
var = 5
是局部变量,只能从其块中访问。
@var = 5
是实例变量,实例变量属于对象本身。