在ruby中如何使用类级别的局部变量? (一个红宝石新手的问题)

所以假设我有这个(不工作):
class User
   description = "I am User class variable"
   def print
       puts description
   end
end

那么,我应该如何使用var描述,如何将其作为认参数传递给方法,或者直接在方法中使用?谢谢..

解决方法

在您的情况下,描述只是局部变量.您可以使用特殊字符@,@ @,$更改此范围:
a = 5
defined? a
=> "local-variable"

@a = 5
defined? @a
=> "instance-variable"

@@a = 5
defined? @@a
=> "class variable"

$a = 5
defined? $a
=> "global-variable"

为了您的目的,我认为可能是通过这种方式使用

class User
  def initialize(description)
    @description = description
  end

  def print
      puts @description
  end
end

obj = User.new("I am User")
obj.print
# => I am User

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...