Project1

标题: 请教以下ruby中这个"< ::"是什么意思。。 [打印本页]

作者: taeckle    时间: 2023-2-5 10:15
标题: 请教以下ruby中这个"< ::"是什么意思。。
本帖最后由 taeckle 于 2023-2-5 10:17 编辑

经常在RPG Maker XP 的默认工程脚本里看到这个< ::,比如在这里:
  1. module RPG
  2.   class Sprite < ::Sprite
  3.     def initialize(viewport = nil)
  4.      super(viewport)
  5.      @_whiten_duration = 0
  6.      @_appear_duration = 0
  7.     end
  8.   end
  9. end
复制代码


请问下大家在这里Sprite < ::Sprite在两个Sprite之间的< ::到底是用来干什么的呢?
作者: 喵呜喵5    时间: 2023-2-5 21:20
表示直接取最顶层作用域

  1. class B
  2.   def hello
  3.     print("outer!")
  4.   end
  5. end
  6. module A
  7.   class B
  8.     def hello
  9.       print("inner!")
  10.     end
  11.   end
  12.   class C < ::B
  13.   end
  14.   class D < B
  15.   end
  16. end

  17. c = A::C.new
  18. d = A::D.new
  19. c.hello
  20. d.hello
复制代码





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1