【问题标题】:Constants in ruby红宝石中的常量
【发布时间】:2013-03-05 10:44:32
【问题描述】:

我有一个像下面这样的字符串,

STRING_FIRST = "Abcd. Efgh. ijkl"

我需要在 ruby​​ 中将上述字符串声明为常量。但它在第一个点(。)上给出了编译时间错误。

谁能帮帮我。

更新实际代码。

class class_name << Test::Unit:TestCase
  include module1

  STRING_FIRST = "Abcd. Efgh. ijkl"

  def method1
    xxx
  end
end

【问题讨论】:

  • 您的实际代码必须看起来不同。这个很好,没有报错。
  • 如果没有你想使用该字符串的上下文,没有人能真正帮助你。请显示更多您的代码,以便我们更好地了解您的情况
  • 类名必须以大写字母开头,并且你用'
  • 编译错误出现在第 3 行。
  • @DanielHilgarth:这不是真的。除了现在或多或少已经过时的 MRI 之外,所有当前的 Ruby 实现至少有一个编译器,有些甚至更多。 YARV 编译为 YARV 字节码,Rubinius 编译为 Rubinius 字节码,然后进一步编译为本机机器码,MagLev 编译为 GemStone/S 字节码,然后进一步编译为本机机器码,MacRuby 编译为本机机器码,JRuby 先解释,然后编译成 JVM 字节码,IronRuby 先解释,然后编译成 CIL 字节码。

标签: ruby string constants


【解决方案1】:

在 Ruby 1.9.3 中我得到一个不同的错误,正如Frederick Cheung 指出的那样,正确的是:

 syntax error, unexpected tLSHFT, expecting '<' or ';' or '\n'

您使用 shift 运算符进行继承,这是不正确的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-28
    • 1970-01-01
    • 2017-04-01
    • 2011-07-25
    • 1970-01-01
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多