【问题标题】:Crystal Lang new as a PrefixCrystal Lang 新作为前缀
【发布时间】:2020-07-19 19:44:22
【问题描述】:

我正在查看水晶编译器的源代码,我遇到了这个:

    def self.from(obj : Array)
      case obj.size
      when 0
        Nop.new
      when 1
        obj.first
      else
        new obj
      end
    end

特别是new obj。我知道T.new 用于创建T 类型的新实例,但我之前从未见过new x。是某种方法吗?我没有在该文件中看到它的定义。这是什么new,它有什么作用?

【问题讨论】:

    标签: oop crystal-lang


    【解决方案1】:

    可能只是Something.new(x)newself.new,因为您可以将 self 放到作用域内。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多