首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

关于变量解决方案

2013-01-01 
关于变量 @cart Cart.new 和 cart Cart.new 这两个变量有什么区别吗,什么时候用实例变量,什么时候用局

关于变量
 @cart = Cart.new 和 cart = Cart.new 这两个变量有什么区别吗,什么时候用实例变量,什么时候用局部变量?o(╯□╰)o
[解决办法]
如果单从你上面的例子很难区别出两者有什么区别,都是实例化一个对象然后保存在变量里。

如果你把这两者放在一个Class里比较,区别就出来了。局部变量作用域名只作用在局部。比如一个method。而实例相当于class的一个属性。

class Cart
 def initialize
  @var = "test"
 end

 def var 
  @var
 end
end

cart = Cart.new
cart.var # test

如果你把@var 换成 var 你可以试试还做的到吗?

热点排行